My MetaDate.xml file is:-
My Keystore.proper ties file was:-
Here I put my Keystore.proper ties file in src folder and the key.jks file in a temp/keys folder which is under src folder of my Web Service project.
But my problem is when ever I am trying to send any request using SOAP UI it will show the error i.e. :-
org.apache.cxf. binding.soap.So apFault: General security error (Cannot load the resource serviceKeystore .properties)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.createSo apFault(WSS4JIn Interceptor.jav a:643)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.handleMe ssage(WSS4JInIn terceptor.java: 308)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.handleMe ssage(WSS4JInIn terceptor.java: 85)
at org.apache.cxf. phase.PhaseInte rceptorChain.do Intercept(Phase InterceptorChai n.java:263)
at org.apache.cxf. transport.Chain InitiationObser ver.onMessage(C hainInitiationO bserver.java:12 3)
at org.apache.cxf. transport.http_ jetty.JettyHTTP Destination.ser viceRequest(Jet tyHTTPDestinati on.java:323)
at org.apache.cxf. transport.http_ jetty.JettyHTTP Destination.doS ervice(JettyHTT PDestination.ja va:289)
at org.apache.cxf. transport.http_ jetty.JettyHTTP Handler.handle( JettyHTTPHandle r.java:72)
Caused by: org.apache.ws.s ecurity.WSSecur ityException: General security error (Cannot load the resource serviceKeystore .properties)
at org.apache.ws.s ecurity.compone nts.crypto.Cryp toFactory.getPr operties(Crypto Factory.java:24 3)
at org.apache.ws.s ecurity.compone nts.crypto.Cryp toFactory.getIn stance(CryptoFa ctory.java:168)
at org.apache.cxf. ws.security.wss 4j.AbstractWSS4 JInterceptor.lo adCryptoFromPro pertiesFile(Abs tractWSS4JInter ceptor.java:202 )
at org.apache.ws.s ecurity.handler .WSHandler.load Crypto(WSHandle r.java:805)
at org.apache.ws.s ecurity.handler .WSHandler.load SignatureCrypto (WSHandler.java :726)
at org.apache.ws.s ecurity.handler .WSHandler.deco deSignaturePara meter2(WSHandle r.java:1090)
at org.apache.ws.s ecurity.handler .WSHandler.doRe ceiverAction(WS Handler.java:27 2)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.handleMe ssage(WSS4JInIn terceptor.java: 242)
According to a document I also tried by inserting the class folder of key.jks class in the Libraries of my Web Service project.
Please tell me what to do to resolve this?
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) Orga Systems GmbH and/or its affiliates, 2011 - 2012 All
Rights Reserved. The software contained on this media is proprietary to and
embodies the confidential technology of the copyright holder. Possession,
use, duplication or dissemination of the software and media is authorized
only pursuant to a valid written license from the copyright holder. This
copyright notice must appear in all copies of this software. -->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:cxf="http://cxf.apache.org/core"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<!-- webservice bean defintions can refer to parent "webserviceImplParent"
(defined in ws-core-context.xml) to inherit injection of mandatory dependecies
and init-method. Can be overridden here if required -->
<bean id="getAccountImpl" class="com.orga.oslee.bsg.ra.ws.GetAccountImpl" parent="webserviceImplParent" />
<bean id="ServerPasswordCallback" class="com.orga.oslee.bsg.ra.ws.ServerPasswordCallback" />
<jaxws:endpoint xmlns:tns="http://oslee.orga.com/bsg/ra/ws"
id="getAccount" implementor="#getAccountImpl"
wsdlLocation="/data/AJENA/Sec_Aks/JavaProducts_oslee_bsg_dev_R1.1_security_test_Sec_Aks/install/conf/com.orga.oslee.ra.bsgws.BSGStandardWebservice-dev-R1.0.0/BSGAccountServices.wsdl"
endpointName="tns:GetAccountPort" serviceName="tns:GetAccountService"
address="http://kolps12:33333/getaccount">
<jaxws:outInterceptors>
<ref bean="TimestampSignEncrypt_Response" />
</jaxws:outInterceptors>
<jaxws:inInterceptors>
<ref bean="TimestampSignEncrypt_Request" />
</jaxws:inInterceptors>
</jaxws:endpoint>
<!-- WSS4JInInterceptor for decrypting and validating the signature of the
SOAP request. -->
<bean id="TimestampSignEncrypt_Request" class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
<constructor-arg>
<map>
<entry key="action" value="Timestamp Signature Encrypt" />
<entry key="signaturePropFile" value="serviceKeystore.properties" />
<entry key="decryptionPropFile" value="serviceKeystore.properties" />
<entry key="passwordCallbackClass" value="com.orga.oslee.bsg.ra.ws.ServerPasswordCallback" />
</map>
</constructor-arg>
</bean>
<!-- WSS4JOutInterceptor for encoding and signing the SOAP response. -->
<bean id="TimestampSignEncrypt_Response" class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor">
<constructor-arg>
<map>
<entry key="action" value="Timestamp Signature Encrypt" />
<entry key="user" value="myservicekey" />
<entry key="signaturePropFile" value="serviceKeystore.properties" />
<entry key="encryptionPropFile" value="serviceKeystore.properties" />
<entry key="encryptionUser" value="useReqSigCert" />
<entry key="passwordCallbackClass" value="com.orga.oslee.bsg.ra.ws.ServerPasswordCallback" />
<entry key="signatureParts"
value="{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp;{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body"/>
<entry key="encryptionParts"
value="{Element}{http://www.w3.org/2000/09/xmldsig#}Signature;{Content}{http://schemas.xmlsoap.org/soap/envelope/}Body" />
<entry key="encryptionSymAlgorithm" value="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
</map>
</constructor-arg>
</bean>
</beans>
My Keystore.proper ties file was:-
Code:
org.apache.ws.security.crypto.merlin.keystore.file=/data/AJENA/Sec_Aks/JavaProducts_oslee_bsg_dev_R1.1_security_test_Sec_Aks/Component/build/ORGA/OSLEE/ws-standard/src/com/orga/oslee/bsg/ra/ws/temp/keys/Keystore.jks org.apache.ws.security.crypto.merlin.keystore.password=abpass org.apache.ws.security.crypto.merlin.keystore.type=jks org.apache.ws.security.crypto.merlin.keystore.alias=myservicekey
But my problem is when ever I am trying to send any request using SOAP UI it will show the error i.e. :-
org.apache.cxf. binding.soap.So apFault: General security error (Cannot load the resource serviceKeystore .properties)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.createSo apFault(WSS4JIn Interceptor.jav a:643)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.handleMe ssage(WSS4JInIn terceptor.java: 308)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.handleMe ssage(WSS4JInIn terceptor.java: 85)
at org.apache.cxf. phase.PhaseInte rceptorChain.do Intercept(Phase InterceptorChai n.java:263)
at org.apache.cxf. transport.Chain InitiationObser ver.onMessage(C hainInitiationO bserver.java:12 3)
at org.apache.cxf. transport.http_ jetty.JettyHTTP Destination.ser viceRequest(Jet tyHTTPDestinati on.java:323)
at org.apache.cxf. transport.http_ jetty.JettyHTTP Destination.doS ervice(JettyHTT PDestination.ja va:289)
at org.apache.cxf. transport.http_ jetty.JettyHTTP Handler.handle( JettyHTTPHandle r.java:72)
Caused by: org.apache.ws.s ecurity.WSSecur ityException: General security error (Cannot load the resource serviceKeystore .properties)
at org.apache.ws.s ecurity.compone nts.crypto.Cryp toFactory.getPr operties(Crypto Factory.java:24 3)
at org.apache.ws.s ecurity.compone nts.crypto.Cryp toFactory.getIn stance(CryptoFa ctory.java:168)
at org.apache.cxf. ws.security.wss 4j.AbstractWSS4 JInterceptor.lo adCryptoFromPro pertiesFile(Abs tractWSS4JInter ceptor.java:202 )
at org.apache.ws.s ecurity.handler .WSHandler.load Crypto(WSHandle r.java:805)
at org.apache.ws.s ecurity.handler .WSHandler.load SignatureCrypto (WSHandler.java :726)
at org.apache.ws.s ecurity.handler .WSHandler.deco deSignaturePara meter2(WSHandle r.java:1090)
at org.apache.ws.s ecurity.handler .WSHandler.doRe ceiverAction(WS Handler.java:27 2)
at org.apache.cxf. ws.security.wss 4j.WSS4JInInter ceptor.handleMe ssage(WSS4JInIn terceptor.java: 242)
According to a document I also tried by inserting the class folder of key.jks class in the Libraries of my Web Service project.
Please tell me what to do to resolve this?