Gemini Community Support Site

This Gemini community support site can be used to find solutions to product issues. You can log in using Open Id, Google Profile and even Facebook. Feel free to ask a question or browse FAQs and documentation. Product tour videos are also available along with how-to videos demonstrating key Gemini capabilities.




v3.1.0: can't login to Gemini with Gemini Desktop

desktop
add-ons

I'm using latest version of Gemini Desktop and tried to login to Gemini server, on Gemini server i kept getting this error from WSE3.0, and apparently I can't never login to Gemini with Gemini Desktop:

Event Type:    Error
Event Source:    Microsoft WSE 3.0
Event Category:    None
Event ID:    0
Date:        1/29/2009
Time:        2:37:15 PM
User:        N/A
Computer:    SERV-SOURCECTRL
Description:
System.ApplicationException: WSE842: The service pipeline could not be created. ---> System.Configuration.ConfigurationErrorsException: WSE032: There was an error loading the microsoft.web.services3 configuration section. ---> System.Configuration.ConfigurationErrorsException: The entry 'UsernameToken' has already been added.
   at System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, SectionInput input, Boolean isTrusted, FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult)
   at System.Configuration.BaseConfigurationRecord.Evaluate(FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult, Boolean getLkg, Boolean getRuntimeObject, Object& result, Object& resultRuntimeObject)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)
   at System.Configuration.BaseConfigurationRecord.GetSection(String configKey, Boolean getLkg, Boolean checkPermission)
   at System.Configuration.BaseConfigurationRecord.GetSection(String configKey)
   at System.Web.HttpContext.GetSection(String sectionName)
   at Microsoft.Web.Services3.Configuration.WebServicesConfiguration.getCurrent()
   --- End of inner exception stack trace ---
   at Microsoft.Web.Services3.Configuration.WebServicesConfiguration.get
Current()
   at Microsoft.Web.Services3.Configuration.WebServicesConfiguration.get_MessagingConfiguration()
   at Microsoft.Web.Services3.WseProtocol.ModifyInitializedExtensions(PriorityGroup group, SoapExtension[] extensions)
   at System.Web.Services.Protocols.SoapServerProtocol.Initialize()
   --- End of inner exception stack trace ---



kha
· 1
kha
Replies (14)
helpful
0
not helpful

Is Gemini running under another app? It seems like you have another web.config file a level up from Gemini that defines the token.


Mark Wing
· 9108
Mark Wing
helpful
0
not helpful

Yes, I happened to create Gemini under IIS/Websites and installed Gemini under that Gemini. 
When I clicked on the first Gemini, there is a web.config and clicked on the sub-Gemini, there is also a web.config.  Both web.config are pointing to the same location, so they are actually the same one.

D:\Data\CounterSoft\Gemini Project Issue Tracking\Gemini Web Application\web.config

How should i fix this? Should i delete the web.config on the first Gemini?



kha
· 1
kha
helpful
0
not helpful

Please try. However, I think you should recreate it as one site, not sure why you have done it this way.


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

I've got almost the exact same error message

System.ApplicationException: WSE842: The service pipeline could not be created. ---> System.Configuration.ConfigurationErrorsException: WSE032: There was an error loading the microsoft.web.services3 configuration section. ---> System.Configuration.ConfigurationErrorsException: The entry 'UsernameToken' has already been added.
   at System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, ...

I'll spare you the rest of it. However, I'm getting the error in the event log while trying to use the subversion hook scripts, through the provided CounterSoft.Gemini.SourceControl.SVN.exe "glue".  Any subversion client just says the following

C:\Temp\com.companyinc.PC.VDR.PDF>svn commit --username george -m "GEM:1 svn testing"
Sending        SummaryData.cs
Transmitting file data .
Committed revision 1993.

Warning: post-commit hook failed (exit code 1) with no output.

I only have one web.config that I can find, and it only has one entry.  I'm sorry if I'm missing something obvious, I'm a *nix, not windows, admin trying to figure this out.

I see in the C# code for CounterSoft.Gemini.SourceControl.SVN.exe that there are a bunch of calls to DiagnosticsManager.TraceMessage(), but I don't have the source for the library in which this is defined, so I have no idea where these messages are going or how to get at them - if I'm even getting that far.  I can get at the webservice and see the WSDL, so the service appears to be running.  I just can't figure out what the error message is trying to tell me to fix.

UPDATE: In the IIS manager, similar to the screenshot the other user posted, I have two "Gemini" entries - one under the other each with a complete list of files, which doesn't make any sense to me, but that was how the installer configured it.  I tested changing the name of one of the "web.config" files and it changed the name in both places - meaning that it is referring to the same thing on disk.  I half-assume that the installer knows better what it is doing with IIS than I do...and I have no clue how to reduce that to just one entry, or is this correct?


horatio
· 1
horatio
helpful
0
not helpful

Figured out from another post how to read the debug messages from the svn connector.  It says pretty much the same thing the log says, but does help me see that the pre-commit works fine.

[540] CounterSoft Gemini: Main
[540] CounterSoft Gemini: Argument: post-commit
[540] CounterSoft Gemini: Argument: c:\svnrepository
[540] CounterSoft Gemini: Argument: 1991
[540] CounterSoft Gemini: Constructing Service Manager.
[540] CounterSoft Gemini: Constructed Service Manager.
[540] CounterSoft Gemini: Gemini Username: weldon
[540] CounterSoft Gemini: Done SetAuthenticationTokenOnAllServices.
[540] CounterSoft Gemini: Issue ID: 1
[540] CounterSoft Gemini: Commit Comment: GEM:1 svn testing
[540] CounterSoft Gemini: Gemini User ID: 0
[540] CounterSoft Gemini: SVN check-in Author: rhorn
[540] CounterSoft Gemini: SVN check-in Repository Path: c:\svn
repository
[540] CounterSoft Gemini: SVN check-in Revision Number: 1991
[540] CounterSoft Gemini: SVN check-in Committed Files: U   Weldon/Code/PC/VDR/com.weldoninc.PC.VDR.PDF/SummaryData.cs
[540] CounterSoft Gemini: Program. System.Web.Services.Protocols.SoapHeaderException: Server unavailable, please try later ---> System.ApplicationException: WSE842: The service pipeline could not be created. ---> System.Configuration.ConfigurationErrorsException: WSE032: There was an error loading the microsoft.web.services3 configuration section. ---> System.Configuration.ConfigurationErrorsException: The entry 'UsernameToken' has already been added.
[540]    at System.Configuration.BaseConfigurationRecord.EvaluateOne(String[] keys, SectionInput input, Boolean isTrusted, FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult)
[540]    at System.Configuration.BaseConfigurationRecord.Evaluate(FactoryRecord factoryRecord, SectionRecord sectionRecord, Object parentResult, Boolean getLkg, Boolean getRuntimeObject, Object& result, Object& resultRuntimeObject)
[540]    at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)



horatio
· 1
horatio
helpful
0
not helpful

Still trying to track this down, getting kind of frustrated.  The Windows "Search" utility is completely useless when it comes to searching for files containing strings, so I had to go find something third party to do the job.  The result is that there are two "web.config" files containing the phrase "UsernameToken":

C:\Documents and Settings\Administrator\Desktop\CounterSoft Gemini\Gemini Web Application\Web.config
C:\Program Files\CounterSoft\Gemini Project Issue Tracking\Gemini Web Application\Web.config

The first is unrelated and unused.  It is just there because I grabbed the Gemini zip file and unpacked it to rifle through the contents.

If I comment out the "security" section of CounterSoft\Gemini Project Issue Tracking\Gemini Web Application\Web.config, a different exception is throw - one that talks about how it can't understand how to parse a specific type of hash or something like that.  Regardless, I can't find the source of any additional "usernametoken" entries anywhere that the server would be parsing.

EDIT: I also, as per another thread, tried changing the port that Gemini was running on from 80 to 8001, and that didn't help - same issue.

EDIT: While my issue is with the svn integration, I just tried running the Gemini Desktop app, and got the same error in the event logs of the server.


horatio
· 1
horatio
helpful
0
not helpful

Is it possible for you to install Gemini on another webserver? We want to see if this is server specific.


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

The only other real IIS server I have access to is already running an old version (2.x) of Gemini and I cannot risk blowing that away because it is our production system.

I'm going to instead get IIS and (hopefully) some version of SQL Server running on my XP pro box and try to install Gemini on that.  I'll keep you posted. 

Any other ideas on how to track down the problem, however?  Any way to tell where the "UsernameToken" keys are coming from?


horatio
· 1
horatio
helpful
0
not helpful

The XP pro box looks like a no-go.  IIS was already installed with something in it, and while I can get a single static page (iisstart.htm) working fine, when I point the browser at any Gemini page, it just says 404, which is stupid because I put the Gemini files into the same directory where iisstart.htm is being served from (confirmed by modifying iisstart.htm).

Supposing I have the 2k3 server I have to work with, what are my options?


horatio
· 1
horatio
helpful
0
not helpful

What services are enabled in IIS?

Are you sure that there are no WSE or other config files in the WWWRoot?


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

What services are enabled in IIS?
All Unknown CGI Extensions: Allowed
All Unknown ISAPI Extensions: Prohibited
Active Server Pages: Allowed
ASP.Net v1.1.4322: Allowed
ASP.Net v2.0.50727: Allowed
Internet Data Connector: Prohibited
Server Side Includes: Prohibited
WebDAV: Prohibited
Windows SharePoint Services: Allowed

Are you sure that there are no WSE or other config files in the WWWRoot?
There is a web.config in "Default Web Site" but it is in a Stopped state, and I renamed that config file to "web.config" just to make sure it stays out of the way.  I searched the entire drive for web.config files containing the phrase "UsernameToken" (using a third party tool, because windows search doesn't actually search most file contents, wtf?) and only found two - one was the Gemini installed version and the other was a copy of the Gemini files in a folder on the desktop.  As for the wwwroot

 Directory of C:\Inetpub\wwwroot

02/20/2009  04:27 PM    <DIR>          .
02/20/2009  04:27 PM    <DIR>          ..
03/03/2006  07:03 PM    <DIR>          aspnetclient
02/21/2003  06:48 PM             1,433 iisstart.htm
02/21/2003  06:48 PM             2,806 pagerror.gif
04/06/2006  08:05 AM             6,102 web
.config_
03/06/2006  03:03 PM    <DIR>          wpresources



One thing that might be going on (again, I apologize, I'm a nix admin, so I'm just trying to understand IIS) is that when the Gemini installer runs, it fails to fill in at least one value in the IIS config it sets up.  I've confirmed that this is the case when I tried running the installer in XP.  It misses the Properties>Home Directory>Local Path setting.  This setting does not appear to be optional, because as soon as you click on the Gemini server in IIS, it says something like "The specified path cannot be found" - but never tells you wth it is talking about(!).  I figured it out because if you go to the Home Directory tab and hit 'Ok' the dialog won't let you leave and tells you that the Local Path setting cannot be left empty.  Let me repeat that for emphasis.  You cannot leave that panel without hitting 'Cancel' - meaning any changes are lost, so you must fill in something.

After I filled that in and told it where the Gemini files were (C:\Program Files\CounterSoft\Gemini Project Issue Tracking\Gemini Web Application) then things *started
working - prior to that I could only get 403/404 errors.  However, it was at that point in IIS where the Gemini globe went from having just a gear under it to having a gear and the list of directories.  The gear has the same set of directories under it - the globe and the gear point at the same thing, because if you rename a file like web.config, it changes in both places.  So is it possible that IIS is being stupid and seeing the same file twice?  If so, any thoughts on how to fix it?


horatio
· 1
horatio
helpful
0
not helpful

Seems very odd. Is it possible for you to do the IIS install manually?

ie. delete the current test Gemini site(s) and create a new one point it to a directory and set asp.net 2.0.

Also, what is the web.config file?


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

Sorry, was out sick for a couple of days.

I was able to get it running by doing a manual install - still not sure what the installer package did wrong.  IIS is goofed up now, but that is my issue to figure out.

web.config is just the renamed "web.config" from c:\inetpub\wwwroot.  There was no "UsernameToken" key in that file, but just to make sure it could not possibly be interfering, I renamed it by adding the "_" characters.


horatio
· 1
horatio
helpful
0
not helpful

Thanks for the update.


Saar Cohen
· 5000
Saar Cohen