Author |
Message
|
sravan |
Posted: Thu Apr 17, 2014 10:39 am Post subject: JMSOutput node configuration. |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
I am trying to configure the JMSOutput node for below properties for which I am sucessfully able to connect using Java compute node.
Please suggest the issue and any aletrnate change in the mqsi command
code from Java compute node for sucessful connection -
Code: |
private final static String providerUrl = "smf://10.252.145.100:55555";
private final static String SecurityPrincipal = "Alex";
private final static String SolaceVpn = "kasVPN";
private final static String detinationQueue = "WMB_QUEUE1";
private final static String ConnectionFactory = "WMBConnectionFactory";
Hashtable<String, Object> env = new Hashtable<String, Object>();
env.put(InitialContext.INITIAL_CONTEXT_FACTORY,"com.solacesystems.jndi.SolJNDIInitialContextFactory" );
env.put(InitialContext.PROVIDER_URL, providerUrl);
env.put(InitialContext.SECURITY_PRINCIPAL, SecurityPrincipal);
// env.put(Context.SECURITY_CREDENTIALS, password);
// enables the use of smfs:// without specifying a trust store
env.put(SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE, false);
env.put(SupportedProperty.SOLACE_JMS_VPN, SolaceVpn); |
I am getting below error using JMSOutput node -
Code: |
RecoverableException
File:CHARACTER:/build/slot1/S800_P/src/DataFlowEngine/ImbDataFlowNode.cpp
Line:INTEGER:1152
Function:CHARACTER:ImbDataFlowNode::createExceptionList
Type:CHARACTER:ComIbmMQInputNode
Name:CHARACTER:WellsFargoSolaceJMSOutputNodeFlow#FCMComposite_1_1
Label:CHARACTER:WellsFargoSolaceJMSOutputNodeFlow.HOGAN CIS MQ Input
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:2230
Text:CHARACTER:Node throwing exception
RecoverableException
File:CHARACTER:/build/slot1/S800_P/src/DataFlowEngine/PluginInterface/ImbJniNode.cpp
Line:INTEGER:1253
Function:CHARACTER:ImbJniNode::evaluate
Type:CHARACTER:ComIbmJMSClientOutputNode
Name:CHARACTER:WellsFargoSolaceJMSOutputNodeFlow#FCMComposite_1_2
Label:CHARACTER:WellsFargoSolaceJMSOutputNodeFlow.JMS Output
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:2230
Text:CHARACTER:Caught exception and rethrowing
RecoverableException
File:CHARACTER:JMSClientErrors.java
Line:INTEGER:694
Function:CHARACTER:JMSClientErrors:handleJNDIException()
Type:CHARACTER:
Name:CHARACTER:
Label:CHARACTER:
Catalog:CHARACTER:BIPmsgs
Severity:INTEGER:3
Number:INTEGER:4640
Text:CHARACTER:Failure to obtain JNDI administered objects
Insert
Type:INTEGER:5
Text:CHARACTER:Broker 'TLX42BK'; Execution Group 'EG-7'; Message Flow 'WellsFargoSolaceJMSOutputNodeFlow'; Node 'JMS Output::ComIbmJMSClientOutputNode'
Insert
Type:INTEGER:5
Text:CHARACTER:com.solacesystems.jndi.SolJNDIInitialContextFactory
Insert
Type:INTEGER:5
Text:CHARACTER:smf://10.252.145.100:55555
Insert
Type:INTEGER:5
Text:CHARACTER:WMBConnectionFactory
Insert
Type:INTEGER:5
Text:CHARACTER:WMB_QUEUE1
Insert
Type:INTEGER:5
Text:CHARACTER:Username must be specified
Insert
Type:INTEGER:5
Text:CHARACTER: Username must be specified
Cooamnds for JMS Configurable service -
1)
mqsicreateconfigurableservice TLX42BK -c JMSProviders -o Solace_JMS
2)
mqsichangeproperties TLX42BK –c JMSProviders –o Solace_JMS -n jarsURL-v "/opt/app/wmb/classes"
3)
mqsichangeproperties TLX42BK -c JMSProviders -o Solace_JMS -n jndiEnvironmentParms -v "javax.naming.InitialContext.SECURITY_PRINCIPAL=Alex;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false"
|
finally ran mqsireportproperties TLX42BK -c JMSProviders -o Solace_JMS -r
to get below for JMS configurable service -
Code: |
JMSProviders
Solace_JMS
clientAckBatchSize='0'
clientAckBatchTime='0'
connectionFactoryName=''
initialContextFactory=''
jarsURL='/opt/app/wmb/classes'
jmsAsyncExceptionHandling='false'
jmsProviderXASupport='true'
jndiBindingsLocation=''
jndiEnvironmentParms='javax.naming.InitialContext.SECURITY_PRINCIPAL=Alex;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false'
nativeLibs='default_Path'
proprietaryAPIAttr1='default_none'
proprietaryAPIAttr2='default_none'
proprietaryAPIAttr3='default_none'
proprietaryAPIAttr4='default_none'
proprietaryAPIAttr5='default_none'
proprietaryAPIHandler='default_none'
BIP8071I: Successful command completion. |
_________________ skr_wmb |
|
Back to top |
|
 |
sravan |
Posted: Fri Apr 18, 2014 7:08 am Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
I am not getting any replies for JMS questions,Is it not widely used in WMB?
I could not use the MQ nodes as MQ provider is a different vendor than WMQ. _________________ skr_wmb |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Apr 18, 2014 8:56 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
So, what do you think the error "Text:CHARACTER:Username must be specified" actually means?
What steps do you think you need to take with WMB to resolve that error? |
|
Back to top |
|
 |
sravan |
Posted: Fri Apr 18, 2014 9:30 am Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
Hi Jeff,
I created JMS code in Java compute node,when I commented the
private final static String SecurityPrincipal = "Alex";
I get the same error Username must be specified
I already set the property for JMS provider configurable service in jndiEnvironmentParms
Code: |
jndiEnvironmentParms='javax.naming.InitialContext.SECURITY_PRINCIPAL=Alex;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false' |
_________________ skr_wmb |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Apr 18, 2014 10:48 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Your configurable service looks all wrong:
Code: |
JMSProviders
Solace_JMS
clientAckBatchSize='0'
clientAckBatchTime='0'
connectionFactoryName='' // you need something there
initialContextFactory='' // you need something there
jarsURL='/opt/app/wmb/classes'
jmsAsyncExceptionHandling='false'
jmsProviderXASupport='true'
jndiBindingsLocation=''
jndiEnvironmentParms='javax.naming.InitialContext.SECURITY_PRINCIPAL=Alex;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false;
com.solacesystems.jms.SupportedProperty.SOLACE_JMS_SSL_VALIDATE_CERTIFICATE=false'
nativeLibs='default_Path'
proprietaryAPIAttr1='default_none'
proprietaryAPIAttr2='default_none'
proprietaryAPIAttr3='default_none'
proprietaryAPIAttr4='default_none'
proprietaryAPIAttr5='default_none'
proprietaryAPIHandler='default_none' |
_________________ MQ & Broker admin |
|
Back to top |
|
 |
sravan |
Posted: Fri Apr 18, 2014 11:38 am Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
I thought we can give those values in the JMSOutputNode as they are available as properties?
or we need to explicitly set them in the configurable service?
Please let me knwo any issues with jndiEnvironmentParms settings also as exceptions saysy user name is not set?
Is there any other way we can set the values? _________________ skr_wmb |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Apr 18, 2014 11:39 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
sravan wrote: |
I thought we can give those values in the JMSOutputNode as they are available as properties?
or we need to explicitly set them in the configurable service?
Please let me knwo any issues with jndiEnvironmentParms settings also as exceptions saysy user name is not set?
Is there any other way we can set the values? |
Have you looked up the signification of propriatary API attributes? _________________ MQ & Broker admin |
|
Back to top |
|
 |
sravan |
Posted: Thu Apr 24, 2014 12:32 pm Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
Below is the documentation for those values -
These attributes are optional. If you configure these attributes, they might be used on one or more method calls to the vendor proprietary API. The usage of these attributes is specific to a vendor interface and their meaning is determined by the IBM proprietary API Handler.
not sure how to set based on the code I posted. _________________ skr_wmb |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Apr 25, 2014 4:20 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
So what have you tried yet?
Have you set up a security profile using mqsisetdbparms for use in your JMS configurable service?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
sravan |
Posted: Fri Apr 25, 2014 7:48 am Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
I set as you suggested with below command(there is no passoword)
It is giving passowrd error so I set to 2 spaces.
Now I get a new error,based on the JMs code I have when I comment below line I get the same error -
JNDI lookup failed - 401: Incomplete Authentication Configuration
Command ran -
mqsisetdbparms TLX42BK -n jndi::com.solacesystems.jndi.SolJNDIInitialContextFactory -u "Alex" -p " "
JMS code commented for same error -
env.put(SupportedProperty.SOLACE_JMS_VPN, "kasVpn");
Please let me know how to set this property. _________________ skr_wmb |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Apr 25, 2014 9:12 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
fjb_saper wrote: |
Have you set up a security profile using mqsisetdbparms for use in your JMS configurable service?  |
_________________ MQ & Broker admin |
|
Back to top |
|
 |
sravan |
Posted: Fri Apr 25, 2014 11:21 am Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
I have set up below -
mqsisetdbparms TLX42BK -n jndi::com.solacesystems.jndi.SolJNDIInitialContextFactory -u "Alex" -p " "
Also the error is thrown from missing property for below based on the JMS code which is running fine.
env.put(SupportedProperty.SOLACE_JMS_VPN, SolaceVpn); _________________ skr_wmb |
|
Back to top |
|
 |
sravan |
Posted: Mon Apr 28, 2014 9:06 am Post subject: |
|
|
Centurion
Joined: 02 Apr 2010 Posts: 104 Location: Charlotte
|
Hi fjb_saper,
I have used below command and it sucessfully ran and I am able to connect to the Solace appliance and put messages.
wmbadm8@cdztd65136:/users/apps/mqbrkrs/wmbadm8> mqsichangeproperties TLX42BK -c JMSProviders
-o Solace_JMS -n jndiEnvironmentParms -v "java.naming.factory.initial=com.solacesystems.jndi.SolJNDIInitialContextFactory;java.naming.provider.url=smf://10.252.145.100:55555;Solace_JMS_VPN=kasVPN;java.naming.security.principal=Alex"
BIP8071I: Successful command completion. _________________ skr_wmb |
|
Back to top |
|
 |
|