Author |
Message
|
MikeOliverAZ |
Posted: Thu Oct 10, 2013 10:23 pm Post subject: Error Connecting WMB to WSRR |
|
|
 Apprentice
Joined: 10 Jul 2013 Posts: 47
|
I am evaluating WSRR to use with WMB 8 and trying to do a Registry Lookup.
I have installed WSRR on localhost and can access and add documents to a Business Application defined in WSRR.
The web UI can be used at
Code: |
https://localhost:9443/ServiceRegistry/ |
and when I go to the web service at
Code: |
https://localhost:9443/WSRRCoreSDO/services/WSRRCoreSDOPort |
I get asked to authenticate and when I do I see...
Code: |
{http://www.ibm.com/xmlns/prod/serviceregistry/6/0/ws/sdo}WSRRCoreSDOPort
Hi there, this is a Web service! |
So the web service endpoint I registered with
Code: |
mqsichangeproperties broker name
-c ServiceRegistries -o DefaultWSRR -n endpointAddress
-v https://localhost:9443/WSRRCoreSDO/services/WSRRCoreSDOPort |
should be correct.
However when I run my broker app with the RegistryLookup node to fetch one of the documents I have loaded, I get this exception "On Connection" so it happens before I even get to the RegistryLookup.
I have set the properties for the key and trust files from my localhost profile.
Code: |
( ['MQROOT' : 0xca450b0]
(0x01000000:Name):RecoverableException = (
(0x03000000:NameValue):File = 'F:\build\slot1\S800_P\src\DataFlowEngine\ImbDataFlowNode.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 1154 (INTEGER)
(0x03000000:NameValue):Function = 'ImbDataFlowNode::createExceptionList' (CHARACTER)
(0x03000000:NameValue):Type = 'SRRetrieveEntityNode' (CHARACTER)
(0x03000000:NameValue):Name = 'WSRRPOCMAIN#FCMComposite_1_2' (CHARACTER)
(0x03000000:NameValue):Label = 'WSRRPOCMAIN.Registry Lookup' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPmsgs' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 2230 (INTEGER)
(0x03000000:NameValue):Text = 'Node throwing exception' (CHARACTER)
(0x01000000:Name ):RecoverableException = (
(0x03000000:NameValue):File = 'SRRetrieveEntityNode.java' (CHARACTER)
(0x03000000:NameValue):Line = 468 (INTEGER)
(0x03000000:NameValue):Function = 'evaluate' (CHARACTER)
(0x03000000:NameValue):Type = '' (CHARACTER)
(0x03000000:NameValue):Name = '' (CHARACTER)
(0x03000000:NameValue):Label = '' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPmsgs' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 3678 (INTEGER)
(0x03000000:NameValue):Text = 'WSRRProxyException - connection problem.' (CHARACTER)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'https://localhost:9443/WSRRCoreSDO/services/WSRRCoreSDOPort' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '<not set>' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '<not set>' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '<not set>' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '<not set>' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'c:\IBM\WebSphere\WSRR\v8.0\profiles\WSRRSrv01\etc\DummyClientKeyFile.jks' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = '<not set>' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'ServiceRegistryException' (CHARACTER)
)
(0x01000000:Name ):RecoverableException = (
(0x03000000:NameValue):File = 'SRRetrieveEntityNode.java' (CHARACTER)
(0x03000000:NameValue):Line = 401 (INTEGER)
(0x03000000:NameValue):Function = 'evaluate' (CHARACTER)
(0x03000000:NameValue):Type = '' (CHARACTER)
(0x03000000:NameValue):Name = '' (CHARACTER)
(0x03000000:NameValue):Label = '' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPmsgs' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 3680 (INTEGER)
(0x03000000:NameValue):Text = 'WSRRProxyException - connection problem or query evaluation error.' (CHARACTER)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'GSR0166E: An error occurred while trying to invoke the Web service: null' (CHARACTER)
)
)
)
)
)
|
What should I look at next? |
|
Back to top |
|
 |
ramires |
Posted: Fri Oct 11, 2013 2:14 am Post subject: |
|
|
Knight
Joined: 24 Jun 2001 Posts: 523 Location: Portugal - Lisboa
|
|
Back to top |
|
 |
martinb |
Posted: Fri Oct 11, 2013 6:42 am Post subject: |
|
|
Master
Joined: 09 Nov 2006 Posts: 210 Location: UK
|
As noted looks like missing configuration steps for the secure connection.
Many of the inserts in BIP3678 report "not set", also remember use
mqsiexplain 3678
to help understand the raw exception details. |
|
Back to top |
|
 |
Y75 |
Posted: Fri Nov 08, 2013 2:18 pm Post subject: |
|
|
Apprentice
Joined: 29 Jul 2013 Posts: 32
|
I cannot understand these two steps in secure WSRR configuration. Whose user name and password is being set here and why?
Quote: |
Set the WebSphere Application Server user name and password by using the following command:
mqsisetdbparms IB9NODE -n DefaultWSRR::WSRR -u wasuser -p waspass
where:
-n specifies the name of the data source
(in this case, DefaultWSRR::WSRR)
-u specifies the user ID to be associated with this data source (in this case, wasuser)
-p specifies the password to be associated with this data source (in this case, waspass)
Set the brokerKeystore user name and password by using the following command:
mqsisetdbparms IB9NODE -n brokerKeystore::password -u dummy -p WebAS
where:
-n specifies the name of the data source (in this case, brokerKeystore::password)
-u specifies the user ID to be associated with this data source (in this case, dummy)
-p specifies the password to be associated with this data source (in this case, WebAS) |
|
|
Back to top |
|
 |
harish_td |
Posted: Mon Nov 11, 2013 7:20 pm Post subject: |
|
|
Master
Joined: 13 Feb 2006 Posts: 236
|
Code: |
mqsisetdbparms IB9NODE -n DefaultWSRR::WSRR -u wasuser -p waspass |
The above command is to instruct the broker to use the appropriate user id and password to login to the secure web server that runs wsrr. This is very similar to how we setup broker access to a database server.
The second command is to instruct the broker to open the keystore using a keystore password. SSL keystores do not need a user name, whilst mqsisetdbparms mandates a user name and password combination
For example, if you attempt to open a keystore using the keytool command, you would provide the below command
Code: |
keytool -list -keystore wsrrKeyStore.jks -storepass WebAS |
In many organizations, a separate administrator provides the keystore password. So you would just stop typing your second command at
Code: |
mqsisetdbparms IB9NODE -n brokerKeystore::password -u dummy |
and allow the administrator to remotely login to your machine/console to key in the secret key store password.
Very similar process to how the DB admins closely guard their passwords from us integration folks |
|
Back to top |
|
 |
Y75 |
Posted: Tue Nov 12, 2013 1:50 pm Post subject: |
|
|
Apprentice
Joined: 29 Jul 2013 Posts: 32
|
Thanks ! That does explain things.
If I got it right, there is basic authentication + SSL going on to access secure WSRR.
Funny thing is WSRR is set up by default to enable both. Way too secure for dev environment. |
|
Back to top |
|
 |
|