I am running simple StockQuoteService security example using certificates,I got the following exception while running the example.Thanks.
bash-2.05b$ java -Daxis.ClientConfigFile=client
-config.wsdd
-classpath $CLASSPATH:. samples.stock.client.StockServiceClient IBM
- Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.
Exception in thread "main" AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: WSDoAllSender: Empty username for specified action
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}hostname:staban.cs.ucl.ac.uk
WSDoAllSender: Empty username for specified action
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:223)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:130)
at org.apache.axis.encoding.DeserializationContext.endElement (DeserializationContext.java:1087)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse (Unknown Source)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope (SOAPPart.java:695)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.wsa.WSAHandler.processClientResponse(WSAHandler.java:82)
at org.apache.axis.wsa.WSAHandler.invoke (WSAHandler.java:41)
at org.apache.axis.client.AxisClient.invokeTransport(AxisClient.java:154)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:289)
at org.apache.axis.client.Call.invokeEngine (Call.java:2838)
at org.apache.axis.client.Call.invoke(Call.java:2824)
at org.apache.axis.client.Call.invoke(Call.java:2501)
at org.apache.axis.client.Call.invoke(Call.java:2424)
at org.apache.axis.client.Call.invoke(Call.java:1835)
at samples.stock.client.GetQuoteSoapBindingStub.getQuote(GetQuoteSoapBindingStub.java:143)
at samples.stock.client.StockServiceClient.main(StockServiceClient.java :16)
I checked my genereated client-config.wsdd file as shown below:
<?xml version="1.0" encoding="UTF-8"?><deployment xmlns=" http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java ">
<globalConfiguration>
<parameter name="adminPassword" value="admin"/>
<parameter name="enableNamespacePrefixOptimization" value="false"/>
<parameter name="disablePrettyXML" value="true"/>
<parameter name="attachments.implementation " value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXsiTypes" value="true"/>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="sendXMLDeclaration" value="true"/>
</globalConfiguration>
<service name="urn:xmltoday-delayed-quotes" provider="java:RPC">
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender">
<parameter name="signaturePropFile" value="mycrypto.properties"/>
<parameter name="action" value="Signature"/>
</handler>
</requestFlow>
<parameter name="wsdlServicePort" value="GetQuote"/>
<parameter name="className" value="samples.stock.client.StockQuoteService "/>
</service>
<transport name="java" pivot="java:org.apache.axis.transport.java.JavaSender"/>
<transport name="http" pivot="java:org.apache.axis.transport.http.HTTPSender "/>
<transport name="local" pivot="java:org.apache.axis.transport.local.LocalSender"/>
</deployment>
My properties file mycrypto.properties is shown below:
org.apache.ws.security.crypto.merlin.file=client-keystore.jks
org.apache.ws.security.crypto.merlin.keystore.password=changeit
org.apache.ws.security.crypto.merlin.keystore.alias=xws-security-client
org.apache.ws.security.crypto.merlin.alias.password=changeit
org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=JKS
org.apache.ws.security.crypto.merlin.crldir=CRLs
Service (urn:xmltoday-delayed-quotes) is successfully deployed at http://localhost:8080/axis/services/urn:xmltoday-delayed-quotes
I would appreciate if somebody could give me the reason for this error.Thanks.
Kash
- Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.
Exception in thread "main" AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: WSDoAllSender: Empty username for specified action
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}hostname:staban.cs.ucl.ac.uk
WSDoAllSender: Empty username for specified action
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:223)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:130)
at org.apache.axis.encoding.DeserializationContext.endElement (DeserializationContext.java:1087)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse (Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse (Unknown Source)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope (SOAPPart.java:695)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.wsa.WSAHandler.processClientResponse(WSAHandler.java:82)
at org.apache.axis.wsa.WSAHandler.invoke (WSAHandler.java:41)
at org.apache.axis.client.AxisClient.invokeTransport(AxisClient.java:154)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:289)
at org.apache.axis.client.Call.invokeEngine (Call.java:2838)
at org.apache.axis.client.Call.invoke(Call.java:2824)
at org.apache.axis.client.Call.invoke(Call.java:2501)
at org.apache.axis.client.Call.invoke(Call.java:2424)
at org.apache.axis.client.Call.invoke(Call.java:1835)
at samples.stock.client.GetQuoteSoapBindingStub.getQuote(GetQuoteSoapBindingStub.java:143)
at samples.stock.client.StockServiceClient.main(StockServiceClient.java :16)
I checked my genereated client-config.wsdd file as shown below:
<?xml version="1.0" encoding="UTF-8"?><deployment xmlns=" http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java ">
<globalConfiguration>
<parameter name="adminPassword" value="admin"/>
<parameter name="enableNamespacePrefixOptimization" value="false"/>
<parameter name="disablePrettyXML" value="true"/>
<parameter name="attachments.implementation " value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXsiTypes" value="true"/>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="sendXMLDeclaration" value="true"/>
</globalConfiguration>
<service name="urn:xmltoday-delayed-quotes" provider="java:RPC">
<requestFlow>
<handler type="java:org.apache.ws.axis.security.WSDoAllSender">
<parameter name="signaturePropFile" value="mycrypto.properties"/>
<parameter name="action" value="Signature"/>
</handler>
</requestFlow>
<parameter name="wsdlServicePort" value="GetQuote"/>
<parameter name="className" value="samples.stock.client.StockQuoteService "/>
</service>
<transport name="java" pivot="java:org.apache.axis.transport.java.JavaSender"/>
<transport name="http" pivot="java:org.apache.axis.transport.http.HTTPSender "/>
<transport name="local" pivot="java:org.apache.axis.transport.local.LocalSender"/>
</deployment>
My properties file mycrypto.properties is shown below:
org.apache.ws.security.crypto.merlin.file=client-keystore.jks
org.apache.ws.security.crypto.merlin.keystore.password=changeit
org.apache.ws.security.crypto.merlin.keystore.alias=xws-security-client
org.apache.ws.security.crypto.merlin.alias.password=changeit
org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=JKS
org.apache.ws.security.crypto.merlin.crldir=CRLs
Service (urn:xmltoday-delayed-quotes) is successfully deployed at http://localhost:8080/axis/services/urn:xmltoday-delayed-quotes
I would appreciate if somebody could give me the reason for this error.Thanks.
Kash
