XML config and package registration for settings

Discussions related to custom development with Select.
Post Reply
ddudley3
Posts: 55
Joined: Fri May 03, 2013 9:11 am

XML config and package registration for settings

Post by ddudley3 »

I am using an xml defined to register settings inside the [core].[ServiceAttribute] table in Select.
starts with
<Services xmlns="http://schemas.softprocorp.com/select/i ... on/2008/04">

I have run the command
sps register /server:http://localhost:8080 <filename>
at the servers and restarted them.

However upon building the solution for the Shell package I am getting an error in Event Viewer when the build reaches the select.exe /setup in the .targets file

Error is:

Code: Select all

System.NullReferenceException: Object reference not set to an instance of an object.
Stack Trace: 
   at SoftPro.Select.Managers.ConfigurationManager.SetupConfigurationSections(String productName, Dictionary`2 arguments)
   at SoftPro.Select.Runtime.OnSetup()
XML Log: 
<ILExceptionData>
  <Point module="Select.exe" classFull="SoftPro.Select.Managers.ConfigurationManager" methodName="SetupConfigurationSections" methodSignature="Void SetupConfigurationSections(System.String, System.Collections.Generic.Dictionary`2[System.Guid,System.Collections.Generic.Dictionary`2[System.String,System.String]])" methodToken="0x600044b" ILOffset="200" />
  <Point module="Select.exe" classFull="SoftPro.Select.Runtime" methodName="OnSetup" methodSignature="Void OnSetup()" methodToken="0x6000198" ILOffset="46" />
</ILExceptionData>


Call Stack: 
   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at System.Diagnostics.TraceEventCache.get_Callstack()
   at SoftPro.Select.LogTraceListener.OnLog(TraceEventCache eventCache, String message, TraceEventType eventType)
   at SoftPro.Select.LogTraceListener.TraceEvent(TraceEventCache eventCache, String source, TraceEventType eventType, Int32 id, String message)
   at System.Diagnostics.TraceInternal.TraceEvent(TraceEventType eventType, Int32 id, String format, Object[] args)
   at System.Diagnostics.Trace.TraceError(String message)
   at SoftPro.Select.Runtime.OnSetup()
   at SoftPro.Select.Runtime.Start()
   at SoftPro.Select.Automation.EnvICE.Start()
   at System.Runtime.Remoting.Messaging.Message.Dispatch(Object target)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
   at System.Runtime.Remoting.Messaging.ServerObjectTerminatorSink.SyncProcessMessage(IMessage reqMsg)
   at SoftPro.Select.Shell.SynchronizationContextAspect.SyncProcessMessage(IMessage msg)
   at System.Runtime.Remoting.Lifetime.LeaseSink.SyncProcessMessage(IMessage msg)
   at System.Runtime.Remoting.Messaging.ServerContextTerminatorSink.SyncProcessMessage(IMessage reqMsg)
   at System.Runtime.Remoting.Channels.CrossContextChannel.SyncProcessMessageCallback(Object[] args)
   at System.Threading.Thread.CompleteCrossContextCallback(InternalCrossContextDelegate ftnToCall, Object[] args)
   at System.Threading.Thread.InternalCrossContextCallback(Context ctx, IntPtr ctxID, Int32 appDomainID, InternalCrossContextDelegate ftnToCall, Object[] args)
   at System.Threading.Thread.InternalCrossContextCallback(Context ctx, InternalCrossContextDelegate ftnToCall, Object[] args)
   at System.Runtime.Remoting.Channels.CrossContextChannel.SyncProcessMessage(IMessage reqMsg)
   at System.Runtime.Remoting.Proxies.RemotingProxy.CallProcessMessage(IMessageSink ms, IMessage reqMsg, ArrayWithSize proxySinks, Thread currentThread, Context currentContext, Boolean bSkippingContextChain)
   at System.Runtime.Remoting.Proxies.RemotingProxy.InternalInvoke(IMethodCallMessage reqMcmMsg, Boolean useDispatchMessage, Int32 callType)
   at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(IMessage reqMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at SoftPro.Select.Automation.EnvICE.Start()
   at SoftPro.Select.Automation.EnvICE.Run(String rootSuffix, Boolean noSplash, Boolean setupMode, Boolean log, Boolean embedding, Boolean allowMultipleInstances, Boolean detectLeaks, Dictionary`2 args, String freeArg)
   at SoftPro.Select.Program.Main(String[] args)

I am not sure where to look.
Thanks
ddudley3
Posts: 55
Joined: Fri May 03, 2013 9:11 am

Re: XML config and package registration for settings

Post by ddudley3 »

My compiled out put being run on a client machine produces the same error

Code: Select all

[09:22:43.314] [0x00000003] System.NullReferenceException: Object reference not set to an instance of an object.
Stack Trace: 
   at SoftPro.Select.Managers.ConfigurationManager.SetupConfigurationSections(String productName, Dictionary`2 arguments)
   at SoftPro.Select.Runtime.OnSetup()
XML Log: 
<ILExceptionData>
  <Point module="Select.exe" classFull="SoftPro.Select.Managers.ConfigurationManager" methodName="SetupConfigurationSections" methodSignature="Void SetupConfigurationSections(System.String, System.Collections.Generic.Dictionary`2[System.Guid,System.Collections.Generic.Dictionary`2[System.String,System.String]])" methodToken="0x600044b" ILOffset="200" />
  <Point module="Select.exe" classFull="SoftPro.Select.Runtime" methodName="OnSetup" methodSignature="Void OnSetup()" methodToken="0x6000198" ILOffset="43" />
</ILExceptionData>
so I seem to be missing something ?
BobRichards
Posts: 1377
Joined: Wed Jan 15, 2014 3:50 pm
Location: Raleigh, NC
Contact:

Re: XML config and package registration for settings

Post by BobRichards »

At this point, Select client is opening the registry and getting information for packages (Select and third-party) we should load. Sounds like it may be an issue with registry on the client machine. Have you installed the Select on the client machine? This doesn't sound like initializing the service attributes is a factor.

By the way, you only need to register the service attributes on a single server in a pool. The values are written to the database and will be picked up by all the servers.
Bob Richards, Senior Software Developer, SoftPro
ddudley3
Posts: 55
Joined: Fri May 03, 2013 9:11 am

Re: XML config and package registration for settings

Post by ddudley3 »

right the server attributes are registered.

This is when the Shell Package I've developed is being installed
and it is happening on multiple machines.. but not my development box.

Yes the client and SDK are on the machines.

I am having it happen on Windows 7 so I don't think it's a permission issue as I am an Admin on my box.

Is there something I can look for specifically in the registry?
ddudley3
Posts: 55
Joined: Fri May 03, 2013 9:11 am

Re: XML config and package registration for settings

Post by ddudley3 »

so it seems if I manually register the dll and run the select.exe /setup manually it's all fine.

It's only a problem if I run this from the Installer built.
BobRichards
Posts: 1377
Joined: Wed Jan 15, 2014 3:50 pm
Location: Raleigh, NC
Contact:

Re: XML config and package registration for settings

Post by BobRichards »

Which version of Select do you have?
Bob Richards, Senior Software Developer, SoftPro
ddudley3
Posts: 55
Joined: Fri May 03, 2013 9:11 am

Re: XML config and package registration for settings

Post by ddudley3 »

4.2.41213.12

using the .iss installer used by other shell packages and that's where it's failing. very odd in my opinion
Post Reply