Quantcast

Patient Discovery Inbound request

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Patient Discovery Inbound request

Baby
while doing the PD inbound request getting the below error,

Security processing failed.
Error calling respondingGatewayPRPAIN201305UV02: Security processing failed

at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:155)
        at com.sun.proxy.$Proxy77.respondingGatewayPRPAIN201305UV02(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at gov.hhs.fha.nhinc.webserviceproxy.WebServiceProxyHelper.invokeTheMethod(WebServiceProxyHelper.java:273)
        at gov.hhs.fha.nhinc.webserviceproxy.WebServiceProxyHelper.invokePort(WebServiceProxyHelper.java:355)
        at gov.hhs.fha.nhinc.webserviceproxy.WebServiceProxyHelper.invokePort(WebServiceProxyHelper.java:333)
        at gov.hhs.fha.nhinc.messaging.client.CONNECTBaseClient.invokePort(CONNECTBaseClient.java:54)
        at _TestConnectService.TestPDInternal.patientDiscovery(TestPDInternal.java:198)
        at _TestConnectService.TestPDInternal.main(TestPDInternal.java:93)
Caused by: org.apache.ws.security.WSSecurityException: General security error (Cannot load the resource saml.properties)
        at org.apache.ws.security.saml.SAMLIssuerFactory.getProperties(SAMLIssuerFactory.java:159)
        at org.apache.ws.security.saml.SAMLIssuerFactory.getInstance(SAMLIssuerFactory.java:101)
        at org.apache.ws.security.action.SAMLTokenSignedAction.loadSamlIssuer(SAMLTokenSignedAction.java:115)
        at org.apache.ws.security.action.SAMLTokenSignedAction.execute(SAMLTokenSignedAction.java:59)
        at org.apache.ws.security.handler.WSHandler.doSenderAction(WSHandler.java:230)
        at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor.access$200(WSS4JOutInterceptor.java:52)
        at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor$WSS4JOutInterceptorInternal.handleMessage(WSS4JOutInterceptor.java:260)
        at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor$WSS4JOutInterceptorInternal.handleMessage(WSS4JOutInterceptor.java:136)
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
        at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:463)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:366)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
        at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:133)

Can you please help in resolving this issue. Thanks in advance
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Patient Discovery Inbound request

Minh
Administrator
Hi,

Can you make sure saml.properties inside your classpath?  Also, it will be helpful if you can provide the following information for further troubleshooting.
1. CONNECT version, app server type
2. Are you using soapUI to test application or standalone java client?  I see that you use TestConnectService.TestPDInternal.main to test PD inbound request.
3. fresh new server log with soap payload request/response.  You can turn it on by enable the following entries "-Dcom.sun.xml.ws.transport.http.HttpAdapter.dump=true" and "-Dcom.sun.xml.ws.transport.http.client.HttpTransportPipe.dump=true"

Thanks,
Minh-Hai Nguyen
CONNECT Product Team Member
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Patient Discovery Inbound request

Baby
Hi,

Thanks for the response.

Below are the details,

Connect version: 4.5
Testing: Testing through the java class
Server : WAS 8.5

I am already setting "-Dcom.sun.xml.ws.transport.http.HttpAdapter.dump=true" and "-Dcom.sun.xml.ws.transport.http.client.HttpTransportPipe.dump=true"  and the saml.properties file also in the class path. But still same error along with the below issues.

I am getting one more error, I am deploying WAS 8.5 server, but it is is saying that Glass Fish log4j is not available, from where should it check for the glass fish instead of WAS 8.5.


C:\ws\glassfish3\glassfish\domains\domain1\config\log4j.properties (The system cannot find the path specified)
        at java.io.FileInputStream.open(Native Method)
        at java.io.FileInputStream.<init>(FileInputStream.java:146)
        at java.io.FileInputStream.<init>(FileInputStream.java:101)
        at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:90)
        at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:188)
        at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:557)
        at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:526)
        at org.apache.log4j.LogManager.<clinit>(LogManager.java:127)
        at org.apache.log4j.Logger.getLogger(Logger.java:117)
        at gov.hhs.fha.nhinc.messaging.client.CONNECTCXFClientSecured.<clinit>(CONNECTCXFClientSecured.java:44)
        at gov.hhs.fha.nhinc.messaging.client.CONNECTCXFClientFactory.getCONNECTClientSecured(CONNECTCXFClientFactory.java:70)
        at _TestConnectService.TestPDInternal.getCONNECTClientSecured(TestPDInternal.java:409)
        at _TestConnectService.TestPDInternal.patientDiscovery(TestPDInternal.java:186)
        at _TestConnectService.TestPDInternal.main(TestPDInternal.java:93)
log4j:ERROR Ignoring configuration file [file:C:/ws/glassfish3/glassfish/domains/domain1/config/log4j.properties].
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer_1/profiles/AppSrv01/installedApps/PTS-LDR-PALABABNode01Cell/ConnectedHealthGatewayEAR.ear/lib/logback-classic-1.1.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer_1/profiles/AppSrv01/installedApps/PTS-LDR-PALABABNode01Cell/ConnectedHealthGatewayEAR.ear/lib/slf4j-jdk14-1.7.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]

And one more issue is in the WAS server, I have configured SSL configuration--> NodeDefaultSSLSettings--> Quality of protection (QoP) settings- Client authentication  as Required and the Protocol as SSL, but still it is looking for the Default init keymanager of type SunX509 instead of IBM key manager, where the issue i don't know.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Patient Discovery Inbound request

Minh
Administrator
Hi,
Based on the log, it seems that you test PD secure and unsecure approach and you use WAS as your responding gateway? Please let me know if the assumption is wrong.  

To eliminate whether WAS set up correctly, can you run our ValidationSuite to validate your server set up(https://connectopensource.atlassian.net/wiki/x/PwCD)?  Also, if you develop your java class inside eclipse, can you paste and check your .classpath?  


at gov.hhs.fha.nhinc.messaging.client.CONNECTBaseClient.invokePort(CONNECTBaseClient.java:54)
        at _TestConnectService.TestPDInternal.patientDiscovery(TestPDInternal.java:198)
        at _TestConnectService.TestPDInternal.main(TestPDInternal.java:93)
------------
         at gov.hhs.fha.nhinc.messaging.client.CONNECTCXFClientFactory.getCONNECTClientSecured(CONNECTCXFClientFactory.java:70)
        at _TestConnectService.TestPDInternal.getCONNECTClientSecured(TestPDInternal.java:409)
        at _TestConnectService.TestPDInternal.patientDiscovery(TestPDInternal.java:186)
        at _TestConnectService.TestPDInternal.main(TestPDInternal.java:93)
Minh-Hai Nguyen
CONNECT Product Team Member
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Patient Discovery Inbound request

Baby
Correct, I am trying to hit the https URL from the Java class, I have the class path args below. And the certificates are also there, but still i am getting the below error,

Caused by: com.ctc.wstx.exc.WstxIOException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at com.ctc.wstx.sw.BaseNsStreamWriter.doWriteAttr(BaseNsStreamWriter.java:519) ~[woodstox-core-asl-4.1.4.jar:4.1.4]
at com.ctc.wstx.sw.BaseNsStreamWriter.writeAttribute(BaseNsStreamWriter.java:228) ~[woodstox-core-asl-4.1.4.jar:4.1.4]
at org.apache.cxf.staxutils.StaxUtils.writeStartElement(StaxUtils.java:682) ~[cxf-api-2.7.3.jar:2.7.3]
at org.apache.cxf.staxutils.StaxUtils.copy(StaxUtils.java:574) ~[cxf-api-2.7.3.jar:2.7.3]
at org.apache.cxf.staxutils.StaxUtils.copy(StaxUtils.java:562) ~[cxf-api-2.7.3.jar:2.7.3]
at org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor$SAAJOutEndingInterceptor.handleMessage(SAAJOutInterceptor.java:212) ~[cxf-bundle-2.7.3.jar:2.7.3]
... 20 common frames omitted

classpath args : -Dcom.ibm.websphere.webservices.DisableIBMJAXWSEnine=true -Djavax.net.debug=ssl,handshake -Djavax.net.ssl.keyStorePassword=changeit -Djavax.net.ssl.keyStore=C:/CHConnectSetUp/CHConnectWorkSpace/_TestConnectService/localhost/gateway.jks -DCLIENT_KEY_ALIAS=gateway -Djavax.net.ssl.keyStoreType=JKS -Djavax.enterprise.resource.webservices.jaxws=FINE -Djavax.net.ssl.trustStorePassword=changeit -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStore=C:/CHConnectSetUp/CHConnectWorkSpace/_TestConnectService/localhost/cacerts.jks -Dnhinc.properties.dir="C:\Program Files (x86)\IBM\WebSphere\AppServer_1\profiles\AppSrv01\installedApps\PTS-LDR-PALABABNode01Cell\ConnectedHealthGatewayEAR.ear\props" -Dcom.sun.xml.ws.transport.http.HttpAdapter.dump=true -Djavax.enterprise.resource.xml.webservices.security.level=FINE -Dcom.sun.enterprise.security.httpsOutboundKeyAlias=default -Dcom.sun.jbi.httpbc.enableClientAuth=true -DSERVER_KEY_ALIAS=gateway

On Wed, Jan 18, 2017 at 8:42 AM, Minh [via CONNECT Forums] <[hidden email]> wrote:
Hi,
Based on the log, it seems that you test PD secure and unsecure approach and you use WAS as your responding gateway? Please let me know if the assumption is wrong.  

To eliminate whether WAS set up correctly, can you run our ValidationSuite to validate your server set up(https://connectopensource.atlassian.net/wiki/x/PwCD)?  Also, if you develop your java class inside eclipse, can you paste and check your .classpath?  


at gov.hhs.fha.nhinc.messaging.client.CONNECTBaseClient.invokePort(CONNECTBaseClient.java:54)
        at _TestConnectService.TestPDInternal.patientDiscovery(TestPDInternal.java:198)
        at _TestConnectService.TestPDInternal.main(TestPDInternal.java:93)
------------
         at gov.hhs.fha.nhinc.messaging.client.CONNECTCXFClientFactory.getCONNECTClientSecured(CONNECTCXFClientFactory.java:70)
        at _TestConnectService.TestPDInternal.getCONNECTClientSecured(TestPDInternal.java:409)
        at _TestConnectService.TestPDInternal.patientDiscovery(TestPDInternal.java:186)
        at _TestConnectService.TestPDInternal.main(TestPDInternal.java:93)
Minh-Hai Nguyen
CONNECT Product Team Member



If you reply to this email, your message will be added to the discussion below:
http://forums.connectopensource.org/Patient-Discovery-Inbound-request-tp7580478p7580490.html
To unsubscribe from Patient Discovery Inbound request, click here.
NAML

Loading...