Error in invoking webservice using axis
Here is my code: I get an error saying No Deserializer found to deserialize a 'http://schemas.xmlsoap.org/soap/encoding
/:string' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.
Please advice on what do I need to do
======================================
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
import java.net.*;
public class Traffic {
public static void main(String [] args) throws Exception {
try{
Service service = new Service();
Call call = (Call)service.createCall();
String endpoint = "http://services.xmethods.net:80/soap/servlet/rpcrouter";
call.setTargetEndpointAddress(new URL(endpoint));
call.setOperationName( new QName("urn:xmethods-CATraffic", "getTraffic") );
//call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
String hwnum = "101"; // get a highway number
System.out.println("hehre");
//System.out.println("Here"+call.invoke(new Object [] {new String(hwnum)}));
String answer =
(String)call.invoke(new Object [] {new String(hwnum)});
System.out.println("Got result : " + answer);
}catch(Exception e){
System.out.println(e);
}
Here is my code: I get an error saying No Deserializer found to deserialize a 'http://schemas.xmlsoap.org/soap/encoding
/:string' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.
Please advice on what do I need to do
======================================
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.namespace.QName;
import java.net.*;
public class Traffic {
public static void main(String [] args) throws Exception {
try{
Service service = new Service();
Call call = (Call)service.createCall();
String endpoint = "http://services.xmethods.net:80/soap/servlet/rpcrouter";
call.setTargetEndpointAddress(new URL(endpoint));
call.setOperationName( new QName("urn:xmethods-CATraffic", "getTraffic") );
//call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
String hwnum = "101"; // get a highway number
System.out.println("hehre");
//System.out.println("Here"+call.invoke(new Object [] {new String(hwnum)}));
String answer =
(String)call.invoke(new Object [] {new String(hwnum)});
System.out.println("Got result : " + answer);
}catch(Exception e){
System.out.println(e);
}
Similar Messages
-
Error while invoking webservice using UTL_HTTP from PL/SQL Block
Hi All,
I am invoking a webservice (SOAP Request) from a PL/SQL block using UTL_HTTP package.
I am able to send the complete request and am getting the required instance on the BPEL Console, but the process is erroring out while getting response back.
and the PL/SQL Block is ending in error mentioned below:
ERROR at line 1:
ORA-29266: end-of-body reached
ORA-06512: at "SYS.UTL_HTTP", line 1321
ORA-06512: at "APPS.CSM_BPEL_TEST_PKG", line 34
ORA-06512: at line 1
Package is completing successfully if i test in local DB and local BPEL.
But giving above error in client's.
Can anyone let me know what is the cause of this.
Thanks in advanceI got it working by making process Synchronous.
But with asynchronous process it is still same error.
Thanks... -
Error while invoking webservice using UTL_HTTP package
Hi All,
I am invoking a webservice (SOAP Request) from a PL/SQL block using UTL_HTTP package.
I am able to send the complete request and am getting the required instance on the BPEL Console, but the process is errorring out while getting response back.
and the PL/SQL Block is ending in error mentioned below:
ERROR at line 1:
ORA-29266: end-of-body reached
ORA-06512: at "SYS.UTL_HTTP", line 1321
ORA-06512: at "APPS.CSM_BPEL_TEST_PKG", line 34
ORA-06512: at line 1
Can anyone let me know what is the cause of this.
Thanks in advanceMy guess would be that your request is not properly constructed,
29266, 00000, "end-of-body reached"
// *Cause: The end of the HTTP response body was reached.
// *Action: If the end of the HTTP response is reached prematurely, check if
// the HTTP response terminates prematurely. Otherwise, end the
// HTTP response.John -
Error while invoking webservice throu https
Error while invoking webservice throu https://
can any one help me on this topic please:
CODE:
SOAPConnection con = null;
try{
String endpoint = "https://wks3089639:4565/Service.serviceagent/PortTypeEndpoint1";
//String endpoint = "http://wks3101999:5539/Service.serviceagent/PortTypeEndpoint1";
//String endpoint = args[0];
//String soapAction = args[1];
System.out.println("javax.net.ssl.keyStore-->"+System.getProperty("javax.net.ssl.trustStore"));
System.setProperty("javax.net.ssl.trustStore","C:/Documents and Settings/1067555/Desktop/certificates/cer.jks");
System.setProperty("javax.net.ssl.keyStore","C:/Documents and Settings/1067555/Desktop/certificates/server.keystore");
System.setProperty("javax.net.ssl.trustStorePassword","password");
System.setProperty("javax.net.ssl.keyStorePassword","password");
// use Sun's reference implementation of a URL handler for the "https" URL protocol type.
//System.setProperty("java.protocol.handler.pkgs","com.sun.net.ssl.internal.www.protocol");
// dynamically register sun's ssl provider
System.setProperty("security.provider","com.sun.net.ssl.internal.ssl.Provider");
//Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
System.out.println("javax.net.ssl.trustStore-->"+System.getProperty("javax.net.ssl.trustStore"));
System.setProperty("javax.net.debug","ssl,handshake");
SOAPConnectionFactory connectionFactory = SOAPConnectionFactory.newInstance();
con = connectionFactory.createConnection();
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage message = messageFactory.createMessage();
SOAPPart soapPart = message.getSOAPPart();
SOAPEnvelope envelope = soapPart.getEnvelope();
SOAPBody body = envelope.getBody();
// MimeHeaders headers = message.getMimeHeaders();
// headers.addHeader("SOAPAction", soapAction);
// headers.addHeader("SOAPAction", "/Service.serviceagent/PortTypeEndpoint1/Operation");
// headers.addHeader("Content-Type","text/xml");
// headers.addHeader("charset","utf-8");
MimeHeaders headers = message.getMimeHeaders();
headers.addHeader("SOAPAction", "/Service.serviceagent/PortTypeEndpoint1/sampleOperation");
headers.addHeader("Content-Type","text/xml");
headers.addHeader("charset","utf-8");
StreamSource inputmsg = new StreamSource(new FileInputStream("client.wsdl"));
soapPart.setContent(inputmsg);
System.out.println("REQUEST:\n");
message.writeTo(System.out);
System.out.println();
message.saveChanges();
SOAPMessage reply = con.call(message, new URL(endpoint));
System.out.println("RESPONSE:\n"+reply.toString());
System.out.println("Header:::"+reply.getSOAPHeader());
System.out.println("Body:::"+reply.getSOAPBody());
System.out.println("RESPONSE:\n");
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
//Extract the content of the reply
Source responseContent = reply.getSOAPPart().getContent();
//Set the output for the transformation
StreamResult result = new StreamResult(System.out);
transformer.transform(responseContent, result);
System.out.println();
}catch(Exception e){
e.printStackTrace();
finally{
con.close();
Exception:
10-Nov-2008 11:55:04 com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection post
SEVERE: SAAJ0009: Message send failed
com.sun.xml.messaging.saaj.SOAPExceptionImpl: java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOAPConnection.java:127)
at com.Sample.main(Sample.java:91)
Caused by: java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOAPConnection.java:121)
... 1 more
Caused by: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:325)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection$PriviledgedPost.run(HttpSOAPConnection.java:150)
... 3 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.<init>(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.New(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown Source)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:282)
... 4 more
CAUSE:
java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOAPConnection.java:121)
at com.Sample.main(Sample.java:91)
Caused by: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:325)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection$PriviledgedPost.run(HttpSOAPConnection.java:150)
... 3 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.<init>(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.New(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown Source)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:282)
... 4 more
CAUSE:
java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOAPConnection.java:121)
at com.Sample.main(Sample.java:91)
Caused by: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:325)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection$PriviledgedPost.run(HttpSOAPConnection.java:150)
... 3 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.<init>(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.New(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown Source)
at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOAPConnection.java:282)
... 4 more
Edited by: javausers07 on Nov 10, 2008 11:58 AMI hope the sun forum can help for me. Lets see
-
Errors while invoking webservice
I am getting below error while invoking webservice in jdev:
<env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<env:Fault>
<faultcode>env:Server</faultcode>
<faultstring>Failure in SDOSerializer.deserialize.</faultstring>
</env:Fault>
</env:Body>
</env:Envelope>
I can see only below log in jdev server log :
<oracle.adf.model> <SDOHelper> <findHelperContext> <SDOHelperContext identified by {http://xmlns.oracle.com/apps/projects/projectManagement/common/projectServiceV2/}ProjectService has not been defined yet!>
<oracle.adf.model> <SDOHelper> <findHelperContext> <SDOHelperContext identified by {http://xmlns.oracle.com/apps/projects/projectManagement/common/projectServiceV2/}ProjectService has not been defined yet!>
could anybody help me to understand what gone wrong ?This thread might help you:
Problems invoke Web Service -
Session in Webservices using Axis 1.3???
Hi,
has anyone a link, tip, sample code,... how to create sessions in Webservices using Axis 1.3?
I've got a Flex frontend...
Please help me...
Greetings,
ChrisApparently you don't understand arrays. You've created the array with a space for one reference. You never assign anything into that array element.
String[] s = new String[1];
s[0].size(); // The reference is NULL!The above is guaranteed to be a null pointer exception - how could the array element have a String in it? We never create a String (only the array) and what text would it have even if it somehow magically worked?
Instead you would have to do this:
String[] s = new String[1];
s[0] = "Hello";
s[0].size(); // The reference is NOT nullThe above is exactly analogous to your problem. -
Exception while invoking webservices using Dynamic client without WSDL
Hi All,
I am getting the below exception while invoking webservices using Dynamic client without WSDL.
javax.xml.rpc.soap.SOAPFaultException: Exception during processing: java.lang.RuntimeException: Missing license file for: WebLogic Platform 8.1 (see Fault Detail for stacktrace)
at weblogic.webservice.core.ClientDispatcher.receive(ClientDispatcher.java:313)
at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:144)
at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:558)
at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
at atthi.webservice.TestWSWithWSDL.main(TestWSWithWSDL.java:41)
Exception in thread "main"
Please find my source file below....
import javax.xml.rpc.ServiceFactory;
import javax.xml.rpc.Service;
import javax.xml.rpc.Call;
import javax.xml.rpc.ParameterMode;
import javax.xml.namespace.QName;
public class TestWSWithoutWSDL {
public static void main(String[] args) {
try{
String address = "<WSDL's SOAP Address>";
String namespaceURI = "<namespaceURI>";
String serviceName = "<serviceName>";
String portName = "<portName>";
String ENCODING_STYLE_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri";
String URI_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
String agencyID = "AGN00533";
String fileName = "testWS";
String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><web-services>Sample Application</web-services>";
System.setProperty( "javax.xml.rpc.ServiceFactory", "weblogic.webservice.core.rpc.ServiceFactoryImpl");
ServiceFactory factory = ServiceFactory.newInstance();
* Create an instance of the Service with the given service QName
Service service = factory.createService(new QName(serviceName));
Call call = service.createCall(new QName(portName));
call.setTargetEndpointAddress(address);
call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
call.setProperty(Call.SOAPACTION_URI_PROPERTY, "");
call.setProperty(ENCODING_STYLE_PROPERTY, URI_ENCODING);
QName stringQName = new QName("http://www.w3.org/2001/XMLSchema", "string");
* Set operation name to invoke.
call.setOperationName(new QName(namespaceURI,"<operationName>"));
* Add parameters definitions in the call object.
call.addParameter("string", stringQName, String.class, ParameterMode.IN);
call.addParameter("string0", stringQName, String.class, ParameterMode.IN);
call.addParameter("string1", stringQName, String.class, ParameterMode.IN);
* Set definition of the return type.
call.setReturnType(stringQName);
Object[] inParams = new Object[3];
inParams[0] = new String(agencyID);
inParams[1] = new String(fileName);
inParams[2] = new String(xmlString);
String result = ((String)call.invoke(inParams)).toString();
System.out.println(result);
}catch (Exception e){
e.printStackTrace();
Please give your suggestions for the above said exception....
Thanks & Regards....Hi All,
I am getting the below exception while invoking webservices using Dynamic client without WSDL.
javax.xml.rpc.soap.SOAPFaultException: Exception during processing: java.lang.RuntimeException: Missing license file for: WebLogic Platform 8.1 (see Fault Detail for stacktrace)
at weblogic.webservice.core.ClientDispatcher.receive(ClientDispatcher.java:313)
at weblogic.webservice.core.ClientDispatcher.dispatch(ClientDispatcher.java:144)
at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:457)
at weblogic.webservice.core.DefaultOperation.invoke(DefaultOperation.java:443)
at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:558)
at weblogic.webservice.core.rpc.CallImpl.invoke(CallImpl.java:411)
at atthi.webservice.TestWSWithWSDL.main(TestWSWithWSDL.java:41)
Exception in thread "main"
Please find my source file below....
import javax.xml.rpc.ServiceFactory;
import javax.xml.rpc.Service;
import javax.xml.rpc.Call;
import javax.xml.rpc.ParameterMode;
import javax.xml.namespace.QName;
public class TestWSWithoutWSDL {
public static void main(String[] args) {
try{
String address = "<WSDL's SOAP Address>";
String namespaceURI = "<namespaceURI>";
String serviceName = "<serviceName>";
String portName = "<portName>";
String ENCODING_STYLE_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri";
String URI_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
String agencyID = "AGN00533";
String fileName = "testWS";
String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><web-services>Sample Application</web-services>";
System.setProperty( "javax.xml.rpc.ServiceFactory", "weblogic.webservice.core.rpc.ServiceFactoryImpl");
ServiceFactory factory = ServiceFactory.newInstance();
* Create an instance of the Service with the given service QName
Service service = factory.createService(new QName(serviceName));
Call call = service.createCall(new QName(portName));
call.setTargetEndpointAddress(address);
call.setProperty(Call.SOAPACTION_USE_PROPERTY, new Boolean(true));
call.setProperty(Call.SOAPACTION_URI_PROPERTY, "");
call.setProperty(ENCODING_STYLE_PROPERTY, URI_ENCODING);
QName stringQName = new QName("http://www.w3.org/2001/XMLSchema", "string");
* Set operation name to invoke.
call.setOperationName(new QName(namespaceURI,"<operationName>"));
* Add parameters definitions in the call object.
call.addParameter("string", stringQName, String.class, ParameterMode.IN);
call.addParameter("string0", stringQName, String.class, ParameterMode.IN);
call.addParameter("string1", stringQName, String.class, ParameterMode.IN);
* Set definition of the return type.
call.setReturnType(stringQName);
Object[] inParams = new Object[3];
inParams[0] = new String(agencyID);
inParams[1] = new String(fileName);
inParams[2] = new String(xmlString);
String result = ((String)call.invoke(inParams)).toString();
System.out.println(result);
}catch (Exception e){
e.printStackTrace();
Please give your suggestions for the above said exception....
Thanks & Regards.... -
Invoke Webservices using SAPXI
Hi,
I am following this weblog
/people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
where can I calculator webservice.
Its not available in http://xmethods.com/ve2/index.po
Thanks
dushanth
Message was edited by:
dushanth ryThanks Prateek for the link
I am new to webservice. Pls help me
when I open the link you mentioned
I clicked on ADD...
It gives me SOAP 1.1 and SOAP 1.2 which one I have to use it and how I should start the scenario (I should use this as inbound interface or outbound interface)
could you pls explain the steps ? It would be really helpful for me
thanks
dushanth
Message was edited by:
dushanth ry -
Transmission of XML Documents in a vector via WebService using Axis
Hello,
I'm trying to transmit several XML documents (belonging to a DICOM-Study) from WebService Provider to WebService consumer.
This is my server/provider:
public static Vector<Document> returnPatientStudies(String PatientID)
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
File x = new File(PATH + "patient.xml");
Document document = builder.parse(x);
DCM2XMLFiles.add(document);This code works fine if it's executed locally in a JAVA class or via http/GET (http://.../axis/services/Gateway?method=returnPatientStudies&PatientID=123456).
After using Axis' WSDL2Java-Tool I wrote a client:
public static void main(String[] args) {
GatewayServiceLocator locator = new GatewayServiceLocator();
try {
Gateway gateway = locator.getGateway();
Vector<Document> documents = Gateway.returnPatientStudies("123456");
... Everytime I try to invoke this client-side class, I get an "org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize."
Obviously the client gets confused by the XML content of the vector I'm trying to transmit (this error also occurs if I transmit XML files constisting only of a single empty element <empty />).
I think this is a simple problem, since one single XML Document can be transmitted and gets displayed on client side, but I don't have a clue how to solve this vector<Document> problem. Hope someone can help me.
ThanksHi thanks for your answer.
I am striving to make this webservice as universal as possible. I have only been returning dumps to my calling page to try and get a view of what's going on inside the component when I call it as a webservice. I wouldn't dream or returnin these back the client.
The major core of this idea was to create a single component that acts as a facade for a number of other components. Because of this the component needs to accept and return a dynamically variable number of arguments. Because of this I selected xml as this seemed like the ideal solution; I can pass in an out some xml that contains all the arguments. I was hoping to reuse some internal functions to provide external webservices, and use this facade architechture to add a layer of security and logging which doesn't exist with the current functions.
Do you have any suggestions of how I could best acheive something along these lines? Has someone already created a framework or methodology for creating webservices with Coldfusion which would provide this sort of functionality out of the box?
Thanks again
Jim -
Imlementing Simple Webservice using AXIS
Hi,
I am trying to implement simple webservice using APACHE AXIS.
I have imported all the required jar files.
Even my client code compiles without any error.
But when I am trying to execute the code, it gives NULL POINTER EXCEPTION. The exception is caused by statement
Service service=new Service();
where Service is a class imported from org.apache.axis.client.Service
Please guide me how to avoid this exception and make my program run properly.
Thanks
Ashutosh.hi ashutosh,
according to me null pointer exception is displayed because the service you are trying to call is not identified by your client.
this happens if your endpoint is not properly mentioned.
try to save the service as .jws and keep it in axis directory.after that ,use your client to call the service.
mention endpoint, service method name. use invoke method to call the service.
//use the following import statements:
<%@ page import="org.apache.axis.client.Call" %>
<%@ page import="org.apache.axis.client.Service" %>
<%@ page import="javax.xml.namespace.QName" %>
<%@ page import="java.net.*" %>
//set target
String endpoint = "http://localhost:9000/axis/test.jws
call.setTargetEndpointAddress(new URL(endpoint));
//set operation name
QName qname;
qname = new QName("getString");
call.setOperationName(qname);
//invoke the service
out.println(call.invoke(new Object[]{}))
if you have to pass parameters then mention them as
out.println(call.invoke(new Object[]{String s1,....}))
among the jar files you should have:
activation.jar,axis.jar,jaxrpc.jar,saaj.jar,servlet.jar,wsdl4j-1.5.1.jar,xercesImpl.jar,xmlParserApis.jar and the all the tomcat lib jar files in tomcat/common/lib directory
call your service from browser using your client as:
http://localhost:9000/ServiceClient.jsp
IF YOU WANT TO SEE THE WSDL OF THE SERVICE:
http://localhost:9000/axis/EchoHeaders.jws?method=xyz -
JBIMR0025 JBI Error while invoking webservices
Hi All,
We have exposed a webservice in websphere server (JAVA 1.6 ) using JAX RPC. This webservice works perfectly fine, when tested using SOAP UI.
This webservice is consumed by an external team, seems like they are trying to consume it using JBI Open ESB. When the external team is trying to invoke the same webservice it is failing with the following error :
[#|2013-10-17T15:40:03.102-0700|WARNING|sun-appserver2.1|com.sun.jbi.httpsoapbc.OutboundMessageProcessor|_ThreadID=41;_ThreadName=HTTPBC-OutboundReceiver-5;_RequestID=e410120b-07ac-42e6-8eb6-9bef3cebbe93;|HTTPBC-E00759: An exception occured while processing a reply message. HTTPBC-W00759: Reply SOAP Message specifies a Fault that is malformed, or has no detail, or is undefined for operation lowTouchServiceTwoRating.
javax.jbi.messaging.MessagingException: HTTPBC-W00759: Reply SOAP Message specifies a Fault that is malformed, or has no detail, or is undefined for operation lowTouchServiceTwoRating.
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.dispatch(OutboundMessageProcessor.java:1088)
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.processRequestReplyOutbound(OutboundMessageProcessor.java:661)
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.processMessage(OutboundMessageProcessor.java:243)
at com.sun.jbi.httpsoapbc.OutboundAction.run(OutboundAction.java:63)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
|#]
[#|2013-10-17T15:40:03.102-0700|WARNING|sun-appserver2.1|com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider|_ThreadID=42;_ThreadName=HTTPBC-OutboundReceiver-1;_RequestID=ec51ff09-a896-4577-abc5-6299c83e3254;|HTTPBC-E00799: Message denormalization failed
javax.jbi.messaging.MessagingException: javax.jbi.messaging.MessagingException: HTTPBC-E00799: Message denormalization failed
at com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer.denormalize(JAXWSDenormalizer.java:102)
at com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider.onReply(AsyncJBIProvider.java:255)
at com.sun.jbi.httpsoapbc.MessageExchangeSupport.notifyOfReply(MessageExchangeSupport.java:108)
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.processRequestReplyInbound(OutboundMessageProcessor.java:423)
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.processMessage(OutboundMessageProcessor.java:241)
at com.sun.jbi.httpsoapbc.OutboundAction.run(OutboundAction.java:63)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.jbi.messaging.MessagingException: HTTPBC-E00799: Message denormalization failed
at com.sun.jbi.httpsoapbc.SoapDenormalizer.denormalize(SoapDenormalizer.java:226)
at com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer.denormalize(JAXWSDenormalizer.java:92)
... 8 more
Caused by: com.sun.jbi.nms.wsdl11wrapper.WrapperProcessingException: The WSDL definition provided does not contain a definition for the normalized message {http:/lowtouch.uwc.kp.org/wsdl/LowTouchProcess}SOAPFault
at com.sun.jbi.nms.wsdl11wrapper.impl.WrapperParserImpl.parse(WrapperParserImpl.java:83)
at com.sun.jbi.httpsoapbc.SoapDenormalizer.denormalize(SoapDenormalizer.java:189)
... 9 more
|#]
[#|2013-10-17T15:40:03.118-0700|WARNING|sun-appserver2.1|com.sun.jbi.httpsoapbc.OutboundMessageProcessor|_ThreadID=42;_ThreadName=HTTPBC-OutboundReceiver-1;_RequestID=ec51ff09-a896-4577-abc5-6299c83e3254;|HTTPBC-E00759: An exception occured while processing a reply message. javax.jbi.messaging.MessagingException: HTTPBC-E00799: Message denormalization failed
javax.jbi.messaging.MessagingException: javax.jbi.messaging.MessagingException: HTTPBC-E00799: Message denormalization failed
at com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer.denormalize(JAXWSDenormalizer.java:102)
at com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider.onReply(AsyncJBIProvider.java:255)
at com.sun.jbi.httpsoapbc.MessageExchangeSupport.notifyOfReply(MessageExchangeSupport.java:108)
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.processRequestReplyInbound(OutboundMessageProcessor.java:423)
at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.processMessage(OutboundMessageProcessor.java:241)
at com.sun.jbi.httpsoapbc.OutboundAction.run(OutboundAction.java:63)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.jbi.messaging.MessagingException: HTTPBC-E00799: Message denormalization failed
at com.sun.jbi.httpsoapbc.SoapDenormalizer.denormalize(SoapDenormalizer.java:226)
at com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer.denormalize(JAXWSDenormalizer.java:92)
... 8 more
Caused by: com.sun.jbi.nms.wsdl11wrapper.WrapperProcessingException: The WSDL definition provided does not contain a definition for the normalized message {http:/lowtouch.uwc.kp.org/wsdl/LowTouchProcess}SOAPFault
at com.sun.jbi.nms.wsdl11wrapper.impl.WrapperParserImpl.parse(WrapperParserImpl.java:83)
at com.sun.jbi.httpsoapbc.SoapDenormalizer.denormalize(SoapDenormalizer.java:189)
... 9 more
|#]
[#|2013-10-17T15:40:03.118-0700|WARNING|sun-appserver2.1|com.sun.jbi.engine.bpel.BPELSEInOutThread|_ThreadID=16;_ThreadName=BPELSEInOutThread0;_RequestID=aed9924b-a298-49ae-b86b-aaaaa47e2193;|BPJBI-6004:caught exception while processing message
java.lang.NullPointerException
at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:230)
at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:191)
|#]
[#|2013-10-17T15:40:03.118-0700|WARNING|sun-appserver2.1|com.sun.jbi.engine.bpel.BPELSEHelper|_ThreadID=16;_ThreadName=BPELSEInOutThread0;_RequestID=aed9924b-a298-49ae-b86b-aaaaa47e2193;|BPJBI-6001:Sending ERROR status (Service Name = {http://lowtouch.uwc.kp.org/bpel/LowTouchService/LowTouchGetRatingDataProcess}LowTouchGetRatingDataProcess, Endpoint Name = LowTouchGetRatingDataProcessPortTypeRole_myRole, Operation Name = {http://lowtouch.uwc.kp.org/wsdl/LowTouchGetRatingDataProcess}LowTouchGetRatingDataProcessOperation, Message Exchange Id = 151561174326859-64975-136013424009460107)
Error properties
com.sun.jbi.crl.faultcode = Server
com.sun.jbi.crl.faultstring = null
com.sun.jbi.crl.faultactor = sun-bpel-engine
com.sun.jbi.crl.faultdetail =
null
java.lang.NullPointerException
at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:230)
at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:191)
|#]
[#|2013-10-17T15:40:03.118-0700|WARNING|sun-appserver2.1|com.sun.jbi.engine.bpel.BPELSEInOutThread|_ThreadID=16;_ThreadName=BPELSEInOutThread0;_RequestID=aed9924b-a298-49ae-b86b-aaaaa47e2193;|BPJBI-6004:caught exception while processing message
java.lang.IllegalStateException: JBIMR0025: Unexpected illegal state change. Pattern (http://www.w3.org/2004/08/wsdl/in-out) TARGET-State (5)
at com.sun.jbi.messaging.MessageExchangeProxy.nextState(MessageExchangeProxy.java:787)
at com.sun.jbi.messaging.MessageExchangeProxy.setError(MessageExchangeProxy.java:311)
at com.sun.jbi.engine.bpel.BPELSEHelper.sendError(BPELSEHelper.java:253)
at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:328)
at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:191)
|#]
Any idea what could be the root cause for the above error ?Sabarish,
Are you using Workshop to invoke this Web Service ? If you are please attach
the wsdl for the wls 61sp4 Web Service. If you are not using Workshop and
are using WebLogic Web Service, please post this question in the
weblogic.developer.interest.webservices newsgroup.
Thanks
Raj Alagumalai
WebLogic Workshop Support
"Sabarish" <[email protected]> wrote in message
news:3f45d759$[email protected]..
Folks,
I am using WL6.1 sp4. I generated a webservice using the wsgen anttask. It got deployed without error. Now, when I try to invoke the service I
get the following error :
>
Exception in thread "main" java.io.IOException: Server returned HTTPresponse co
de: 500 for URL: http://192.168.149.224:7001/chws/chwsuri
atsun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon
nection.java:604)
atsun.net.www.protocol.http.HttpURLConnection.getHeaderFieldKey(HttpURL
Connection.java:903)
atweblogic.soap.WebServiceProxy.getSessionCookie(WebServiceProxy.java:5
55)
at weblogic.soap.WebServiceProxy.receive(WebServiceProxy.java:523)
at weblogic.soap.WebServiceProxy.invoke(WebServiceProxy.java:492)
at weblogic.soap.SoapMethod.invoke(SoapMethod.java:186)
at DClient.main(DClient.java:28)
Any pointers to this.
Thanx in advance
--Sabarish -
I am trying to invoke FinancialUtilService using HTTP proxy client. I am getting below error while i am trying to invoke this service. Using FusionServiceTester i am able to invoke service and upload file to UCM. Using oracle.ucm.fa_client_11.1.1.jar also i am able to upload file to UCM without any issue. But using HTTP proxy client i am facing below error. Can anyone please help me. PFA code i am using to invoke this service.
javax.xml.ws.soap.SOAPFaultException: InvalidSecurity : error in processing the WS-Security security header
at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:197)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:122)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:125)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:135)
at $Proxy43.uploadFileToUcm(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.wsee.jaxws.spi.ClientInstance$ClientInstanceInvocationHandler.invoke(ClientInstance.java:363)
at $Proxy44.uploadFileToUcm(Unknown Source)
at com.oracle.xmlns.apps.financials.commonmodules.shared.financialutilservice.FinancialUtilServiceSoapHttpPortClient.invokeUpload(FinancialUtilServiceSoapHttpPortClient.java:299)
at com.oracle.xmlns.apps.financials.commonmodules.shared.financialutilservice.FinancialUtilServiceSoapHttpPortClient.main(FinancialUtilServiceSoapHttpPortClient.java:273)
Process exited with exit code 0.
Message was edited by: Oliver Steinmeier
Removed attachmentHi Jani,
Thanks for your reply.
I am new to webservices and we are trying to do a POC on invoking FinancialUtilService using HTTP proxy client. I am following steps mentioned in attached pdf section "Invoking FinancialUtil Service using Web Service Proxy Client". I have imported certificate using below command.
keytool -import -trustcacerts -file D:\Retek\Certificate.cer -alias client -keystore D:\Retek\default-keystore.jks -storepass welcome1
Invoking
SecurityPolicyFeature[] securityFeature =
new SecurityPolicyFeature[] { new
SecurityPolicyFeature("oracle/wss11_saml_token_with_message_protection_client_policy")};
financialUtilService_Service = new FinancialUtilService_Service();
FinancialUtilService financialUtilService= financialUtilService_Service.getFinancialUtilServiceSoapHttpPort(securityFeature);
// Get the request context to set the outgoing addressing properties
WSBindingProvider wsbp = (WSBindingProvider)financialUtilService;
WSEndpointReference replyTo =
new WSEndpointReference("https://efops-rel91-patchtest-external-fin.us.oracle.com/finFunShared/FinancialUtilService", WS_ADDR_VER);
String uuid = "uuid:" + UUID.randomUUID();
wsbp.setOutboundHeaders( new StringHeader(WS_ADDR_VER.messageIDTag, uuid), replyTo.createHeader(WS_ADDR_VER.replyToTag));
wsbp.getRequestContext().put(WSBindingProvider.USERNAME_PROPERTY, "fin_user1");
wsbp.getRequestContext().put(WSBindingProvider.PASSWORD_PROPERTY, "Welcome1");
wsbp.getRequestContext().put(ClientConstants.WSSEC_RECIPIENT_KEY_ALIAS,"service");
wsbp.getRequestContext().put(ClientConstants.WSSEC_KEYSTORE_LOCATION, "D:/Retek/default-keystore.jks");
wsbp.getRequestContext().put(ClientConstants.WSSEC_KEYSTORE_PASSWORD, "welcome1" );
wsbp.getRequestContext().put(ClientConstants.WSSEC_KEYSTORE_TYPE, "JKS" );
wsbp.getRequestContext().put(ClientConstants.WSSEC_SIG_KEY_ALIAS, "client" );
wsbp.getRequestContext().put(ClientConstants.WSSEC_SIG_KEY_PASSWORD, "password" );
wsbp.getRequestContext().put(ClientConstants.WSSEC_ENC_KEY_ALIAS, "client" );
wsbp.getRequestContext().put(ClientConstants.WSSEC_ENC_KEY_PASSWORD, "password" );
SEVERE: WSM-00057 The certificate, client, is not retrieved.
SEVERE: WSM-00137 The encryption certificate, client, is not retrieved due to exception oracle.wsm.security.SecurityException: WSM-00057 : The certificate, client, is not retrieved..
SEVERE: WSM-00161 Client encryption public certificate is not configured for Async web service client
SEVERE: WSM-00005 Error in sending the request.
SEVERE: WSM-07607 Failure in execution of assertion {http://schemas.oracle.com/ws/2006/01/securitypolicy}wss11-saml-with-certificates executor class oracle.wsm.security.policy.scenario.executor.Wss11SamlWithCertsScenarioExecutor.
SEVERE: WSM-07602 Failure in WS-Policy Execution due to exception.
SEVERE: WSM-07501 Failure in Oracle WSM Agent processRequest, category=security, function=agent.function.client, application=null, composite=null, modelObj=FinancialUtilService, policy=oracle/wss11_saml_token_with_message_protection_client_policy, policyVersion=null, assertionName={http://schemas.oracle.com/ws/2006/01/securitypolicy}wss11-saml-with-certificates.
oracle.wsm.common.sdk.WSMException: WSM-00161 : Client encryption public certificate is not configured for Async web service client
at oracle.wsm.security.policy.scenario.executor.Wss11SamlWithCertsScenarioExecutor.sendRequest(Wss11SamlWithCertsScenarioExecutor.java:173)
at oracle.wsm.security.policy.scenario.executor.SecurityScenarioExecutor.execute(SecurityScenarioExecutor.java:545)
at oracle.wsm.policyengine.impl.runtime.AssertionExecutor.execute(AssertionExecutor.java:41)
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.executeSimpleAssertion(WSPolicyRuntimeExecutor.java:608)
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.executeAndAssertion(WSPolicyRuntimeExecutor.java:335)
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.execute(WSPolicyRuntimeExecutor.java:282)
at oracle.wsm.policyengine.impl.PolicyExecutionEngine.execute(PolicyExecutionEngine.java:102)
at oracle.wsm.agent.WSMAgent.processCommon(WSMAgent.java:915)
at oracle.wsm.agent.WSMAgent.processRequest(WSMAgent.java:436)
at oracle.wsm.agent.handler.WSMEngineInvoker.handleRequest(WSMEngineInvoker.java:393)
at oracle.wsm.agent.handler.wls.WSMAgentHook.handleRequest(WSMAgentHook.java:239)
at weblogic.wsee.jaxws.framework.jaxrpc.TubeFactory$JAXRPCTube.processRequest(TubeFactory.java:220)
at weblogic.wsee.jaxws.tubeline.FlowControlTube.processRequest(FlowControlTube.java:98)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:604)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:563)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:548)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:445)
at com.sun.xml.ws.client.Stub.process(Stub.java:259)
at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:152)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:115)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:135)
at $Proxy43.uploadFileToUcm(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.wsee.jaxws.spi.ClientInstance$ClientInstanceInvocationHandler.invoke(ClientInstance.java:363)
at $Proxy44.uploadFileToUcm(Unknown Source)
at com.oracle.xmlns.apps.financials.commonmodules.shared.financialutilservice.FinancialUtilServiceSoapHttpPortClient.invokeUpload(FinancialUtilServiceSoapHttpPortClient.java:111)
at com.oracle.xmlns.apps.financials.commonmodules.shared.financialutilservice.FinancialUtilServiceSoapHttpPortClient.main(FinancialUtilServiceSoapHttpPortClient.java:86)
Caused by: oracle.wsm.security.SecurityException: WSM-00161 : Client encryption public certificate is not configured for Async web service client
at oracle.wsm.security.policy.scenario.processor.Wss11X509TokenProcessor.insertClientEncCertToWSAddressingHeader(Wss11X509TokenProcessor.java:979)
at oracle.wsm.security.policy.scenario.processor.Wss11X509TokenProcessor.build(Wss11X509TokenProcessor.java:206)
at oracle.wsm.security.policy.scenario.executor.Wss11SamlWithCertsScenarioExecutor.sendRequest(Wss11SamlWithCertsScenarioExecutor.java:164)
... 30 more
Caused by: oracle.wsm.security.SecurityException: WSM-00057 : The certificate, client, is not retrieved.
at oracle.wsm.security.jps.WsmKeyStore.getJavaCertificate(WsmKeyStore.java:534)
at oracle.wsm.security.jps.WsmKeyStore.getCryptCert(WsmKeyStore.java:570)
at oracle.wsm.security.policy.scenario.processor.Wss11X509TokenProcessor.insertClientEncCertToWSAddressingHeader(Wss11X509TokenProcessor.java:977)
... 32 more
SEVERE: WSMAgentHook: An Exception is thrown: WSM-00161 : Client encryption public certificate is not configured for Async web service client
File upload failed
javax.xml.ws.WebServiceException: javax.xml.rpc.JAXRPCException: oracle.wsm.common.sdk.WSMException: WSM-00161 : Client encryption public certificate is not configured for Async web service client
at weblogic.wsee.jaxws.framework.jaxrpc.TubeFactory$JAXRPCTube.processRequest(TubeFactory.java:231)
at weblogic.wsee.jaxws.tubeline.FlowControlTube.processRequest(FlowControlTube.java:98)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:604)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:563)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:548)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:445)
at com.sun.xml.ws.client.Stub.process(Stub.java:259)
at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:152)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:115)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:135)
at $Proxy43.uploadFileToUcm(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.wsee.jaxws.spi.ClientInstance$ClientInstanceInvocationHandler.invoke(ClientInstance.java:363)
at $Proxy44.uploadFileToUcm(Unknown Source)
at com.oracle.xmlns.apps.financials.commonmodules.shared.financialutilservice.FinancialUtilServiceSoapHttpPortClient.invokeUpload(FinancialUtilServiceSoapHttpPortClient.java:111)
at com.oracle.xmlns.apps.financials.commonmodules.shared.financialutilservice.FinancialUtilServiceSoapHttpPortClient.main(FinancialUtilServiceSoapHttpPortClient.java:86)
Caused by: javax.xml.rpc.JAXRPCException: oracle.wsm.common.sdk.WSMException: WSM-00161 : Client encryption public certificate is not configured for Async web service client
at oracle.wsm.agent.handler.wls.WSMAgentHook.handleException(WSMAgentHook.java:395)
at oracle.wsm.agent.handler.wls.WSMAgentHook.handleRequest(WSMAgentHook.java:248)
at weblogic.wsee.jaxws.framework.jaxrpc.TubeFactory$JAXRPCTube.processRequest(TubeFactory.java:220)
... 19 more -
Error when invoking WebService from WTK 2.5 client
hi all,
i have developend an EJB3 webservice using JBoss4.0.5.GA...
i wrote a java client using wstools and it worked fine
Then i used StubGenerator from WTK , it generated stubs....
i then tried tocall the jbossws.. the jbossws received the call, but in i got a disaster error when i received back the response from the webservice.
this was the response from the webservice (as i checked in the WTK network monitor)
<env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>
<env:Header/>
<env:Body><ns1:loginResponse xmlns:ns1='http://org.jboss.ws/ejb3ws' xmlns:xsi='http://www.w3.org/2001/XMLSchema
-instance'/>
</env:Body>
</env:Envelope>and this was the exception that i was able to see in the WTK
javax.xml.rpc.JAXRPCException: java.rmi.MarshalException: (1)Missing end tag for Body or Envelope
at com.sun.j2mews.xml.rpc.SOAPDecoder.decode(+243)
at com.sun.j2mews.xml.rpc.OperationImpl.invoke(+90)
at com.mm.j2me.ws.WSRemoteSEI_Stub.login(+48)
at com.mm.j2me.midp.model.HTTPCommunicationHandler.createAccount(+36)
at com.mm.j2me.midp.model.RemoteModelRequestHandler.createAccount(+16)
at com.mm.j2me.midp.model.RemoteModelProxy.createAccount(+16)
at com.mm.j2me.midp.model.ModelFacade.createAccount(+16)
at com.mm.j2me.midp.ui.UIController$EventDispatcher.run(+277)Well, i can see both Body and Envelopen in the message that has been sent back, so can anyone tell me what's wrong with WTK??
thanks in advance and regards
marcoHi all,
as many developers I have encountered the famous "java.rmi.MarshallException:(1)Missing end tag for Body or Envelope" during the development of my WS app for J2ME (JSR 172).
It is correct that is the empty tag <soapenv:Header /> causing this error.
To fix this error, it is necessary to stop the server to generate this empty header in the response stream.
I have fixed this error for Axis2: unfortunaly it is necessary to modify a class in Axiom library. This library is used in Axis2 to produce the SOAP response, you can download the source code at http://ws.apache.org/commons/axiom/source-repository.html.
Here the class to modify:
axiom\modules\axiom-impl\src\main\java\org\apache\axiom\soap\impl\llom\soap11\SOAP11Factory.java
by commenting the line 273 in the method called getDefaultEnvelope() to prevent the empty header insertion in SOAP response:
public SOAPEnvelope getDefaultEnvelope() throws SOAPProcessingException {
OMNamespace ns =
new OMNamespaceImpl(
SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI,
SOAP11Constants.SOAP_DEFAULT_NAMESPACE_PREFIX);
SOAPEnvelopeImpl env = new SOAPEnvelopeImpl(ns, this);
//createSOAPHeader(env); the line to be commented
createSOAPBody(env);
return env;
}Finally you have to recompile Axiom using Maven to obtain the fixed package axiom-impl.jar and to replace this package on the lib repository of your Axis2 server.
A little tricky to fix this bug but now my app runs perfectly ;)
Enjoy!
Romain Pellerin
http://www.gasp-mobilegaming.org -
Error while generating webservices using Date
I am facing the following problem while generating a web service which is having Date as one its members.
I have serialized a class with the following DataStructure
private String rowId1;
private Date created;
private String name;
private String quoteNum;
private String revNum;
private String curcyCd;
private String activeFlg;
private Number discntAmt;
private Number discntPercent;
When i tried to expose this as webservice, If I use the class oracle.jbo.domain.Date for Date type, the webservice is not generated properly. It is not including the method which contains this call. ie) This method is not present in the WSDL file as well as in the proxy.
When I used java.util.Date instead of oracle.jbo.domain.Date, I am able to expose the method and webservice got generated properly. But When i tried to generate the proxy for the WSDL in the consumer, I go the following error.
oracle.jdeveloper.webservices.model.GenerationException: Proxy generation failed for the following reason:
at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.doGeneration(ProxyGenerator.java:608)
at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.generateImpl(ProxyGenerator.java:365)
at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.mav$generateImpl(ProxyGenerator.java:77)
at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator$1ThrowingRunnable.run(ProxyGenerator.java:206)
at oracle.jdeveloper.webservices.model.GeneratorUI$GeneratorAction.run(GeneratorUI.java:446)
at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:551)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.RuntimeException: generator error: no encoder for type "{http://www.w3.org/2001/XMLSchema}dateTime" and Java type "java.lang.String"
at oracle.j2ee.ws.common.processor.Processor.runActions(Processor.java:105)
at oracle.j2ee.ws.tools.wsa.AssemblerTool.run(AssemblerTool.java:99)
at oracle.j2ee.ws.tools.wsa.WsdlToJavaTool.createProxy(WsdlToJavaTool.java:354)
at oracle.j2ee.ws.tools.wsa.Util.createProxy(Util.java:838)
at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.doGeneration(ProxyGenerator.java:549)
... 6 more
Caused by: generator error: no encoder for type "{http://www.w3.org/2001/XMLSchema}dateTime" and Java type "java.lang.String"
at oracle.j2ee.ws.common.processor.generator.GeneratorBase.doGeneration(GeneratorBase.java:181)
at oracle.j2ee.ws.common.processor.generator.GeneratorBase.perform(GeneratorBase.java:137)
at oracle.j2ee.ws.common.processor.Processor.runActions(Processor.java:97)
... 10 more
I am referring to "Entity and view objects based on web service " in the following URL
http://radio.weblogs.com/0118231/stories/2004/09/23/notYetDocumentedAdfSampleApplications.html#93
Thanks and Regards,
JamesHi all,
I have applied the consolidated JRI fixes - patch 17191279 .
Then, when generating Jar, received keypass is tampered error.
re-generated the key using $ adjkey -initialize.
Now, its working fine.
Regards,
Krish. -
Returning Errors from a webservice using XMLBeans
I have a webservice that accepts XML as input and output parameters, and I'm using XMLBeans to handle this. I'm trying to work out how I can return error information from the webservice, so I created an Exception.xsd schema and 'include' it in the output XML Schema, so an exception xml element is valid in the output schema. The problem is, the XMLBean class generated from the output XML schema has no methods that allow me to create an Exception element. Is there some other way of handling the return of exceptions from webservices using XML?
The answer is just throw a SoapFaultException and put the exception.xsd XMLBean in the FaultDetail section of the SoapFaultException.
Maybe you are looking for
-
Reminder days in purchase orders
Dear, If we have a material with the following reminder days: 5 - 10 - 20 Then, the first reminder is send 5 days after the statistical delivery date (of course, if we run ME91F) The second reminder 10 days after the SDD. The third reminder 20 days a
-
Name of restore file(s) for ipad 2
My genius appointment at the apple store where I just spent $900 (tax included) cannot answer this question. What is the name of the restore file that's created when I sync my iPad with my windows 7 notebook? When I hold the shift key down on my note
-
DNG Converter 6.7 release candidate
Which version of the Mac OS is required to run the Adobe DNG Converter 6.7 release candidate application? I have successfully installed it, but seem unable to open it. The converter icon is sitting right there in my Applications folder, but it will n
-
OPEN WITH right click crazyness
Ok, the open with menu shows like 3+ versions of the APP.
-
Hi, We have tried to create the document set using REST API and not able to create the document set using REST API. Finally we have decided to use the Custom WCF service to create the document set. We have three approaches to deploying the WCF servic