Java web services through SAML

I have a clint application lets take swing. i need to access a web service through SAML single sign on. for that i will use another server as a mediator which will authenticate the web service.
please respon with example.
thanks in advance.

The link: Developer Survey
on that page, doesn't work. :)
-G

Similar Messages

  • Calling a web service through SSL via a stand alone java class

    HI,
    I am trying to call a web service through SSL via a simple stand alone java client.
    I have imported the SSL certificate in my keystore by using the keytool -import command.
    Basically I want to add a user to a group on the server. Say I add a user user 1 to group group 1 using an admin userid and password. All these values are set in an xml file which I send to the server while calling the server. I pass the web service URL, the soap action name and the xml to post as the command line arguments to the java client.
    My xml file(Add.xml) that is posted looks like :
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope
    xmlns:xsi = "http://www.w3.org/1999/XMLSchema-instance"
    xmlns:SOAP-ENC = "http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:SOAP-ENV = "http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd = "http://www.w3.org/1999/XMLSchema"
    SOAP-ENV:encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/">
    <SOAP-ENV:Body>
    <namesp1:modifyGroupOperation xmlns:namesp1 = "/services/modifyGroup/modifyGroupOp">
    <auth>
    <user>adminUser</user>
    <password>adminPassword</password>
    </auth>
    <operationType>ADD</operationType>
    <groupName>group1</groupName>
    <users>
    <userName>user1</userName>
    </users>
    </namesp1:modifyGroupOperation>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    I call the client as:
    java PostXML https://com.webservice.com/services/modifyGroup "/services/modifyGroup/modifyGroupOp" Add.xml
    I my client, I have set the following:
    System.setProperty("javax.net.ssl.keyStore", "C:\\Program Files\\Java\\jre1.5.0_12\\lib\\security\\cacerts");
    System.setProperty("javax.net.ssl.keyStorePassword", "password");
    System.setProperty("javax.net.ssl.trustStore", "C:\\Program Files\\Java\\jre1.5.0_12\\lib\\security\\cacerts");
    System.setProperty("javax.net.ssl.trustStorePassword", "password");
    But when I try to execute the java client, I get the following error:
    setting up default SSLSocketFactory
    use default SunJSSE impl class: com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl
    class com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl is loaded
    keyStore is : C:\Program Files\Java\jre1.5.0_12\lib\security\cacerts
    keyStore type is : jks
    keyStore provider is :
    init keystore
    init keymanager of type SunX509
    trustStore is: C:\Program Files\Java\jre1.5.0_12\lib\security\cacerts
    trustStore type is : jks
    trustStore provider is :
    init truststore
    adding as trusted cert:
    init context
    trigger seeding of SecureRandom
    done seeding SecureRandom
    instantiated an instance of class com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl
    main, setSoTimeout(0) called
    main, setSoTimeout(0) called
    %% No cached client session
    *** ClientHello, TLSv1
    RandomCookie: GMT: .....
    Compression Methods: { 0 }
    [write] MD5 and SHA1 hashes: len = 73
    main, WRITE: TLSv1 Handshake, length = 73
    [write] MD5 and SHA1 hashes: len = 98
    main, WRITE: SSLv2 client hello message, length = 98
    [Raw write]: length = 100
    [Raw read]: length = 5
    [Raw read]: length = 58
    main, READ: TLSv1 Handshake, length = 58
    *** ServerHello, TLSv1
    %% Created: [Session-1, SSL_RSA_WITH_RC4_128_MD5]
    ** SSL_RSA_WITH_RC4_128_MD5
    [read] MD5 and SHA1 hashes: len = 58
    [Raw read]: length = 5
    [Raw read]: length = 5530
    main, READ: TLSv1 Handshake, length = 5530
    *** Certificate chain
    chain [0] = ...
    chain [1] = ...
    chain [2] = ...
    chain [3] = ...
    main, SEND TLSv1 ALERT: fatal, description = certificate_unknown
    main, WRITE: TLSv1 Alert, length = 2
    [Raw write]: length = 7
    0000: 15 03 01 00 02 02 2E .......
    main, called closeSocket()
    main, handling exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    main, called close()
    main, called closeInternal(true)
    main, called close()
    main, called closeInternal(true)
    main, called close()
    main, called closeInternal(true)
    Exception in thread "main" javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.c
    ertpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(Unknown Source)
    at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Unknown Source)
    at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(Unknown Source)
    at com.sun.net.ssl.internal.ssl.AppOutputStream.write(Unknown Source)
    at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
    at java.io.BufferedOutputStream.flush(Unknown Source)
    at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:506)
    at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:2110)
    at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1088)
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
    at PostXML.main(PostXML.java:111)
    Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find v
    alid certification path to requested target
    at sun.security.validator.PKIXValidator.doBuild(Unknown Source)
    at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)
    at sun.security.validator.Validator.validate(Unknown Source)
    at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)
    at com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(Unknown Source)
    ... 18 more
    Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)
    at java.security.cert.CertPathBuilder.build(Unknown Source)
    ... 23 more
    I do not know where I have gone wrong. Could someone point out my mistake.
    Thanks In advance!

    Hi jazz123,
    There's an example in the [*Java Web Services Tutorial*|http://java.sun.com/webservices/docs/2.0/tutorial/doc/] : see Chapter 1: Building Web Services with JAX-WS - A Simple JAX-WS Client.

  • Calling a WSSE Enabled Web Service Through a Java Proxy Class

    I am trying to create a client that can access a WSSE enabled web service through
    the generated java proxy. For now all I am asking for in the .wsse file is the
    username and password with the line <token tokenType="username"/>. In the client
    I am setting the username and password token exactly as the BEA documentation
    describes:
    UserInfo ui = new UserInfo("myuser", "mypassword");
    session.setAttribute(WSSEClientHandler.REQUEST_USERINFO, ui);
    Yet I am getting the following error message when I try to run the client:
    java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException:
    EJB Exception: ; nested exception is:
    com.bea.wlw.runtime.jws.wssecurity.exception.WLWWSSEException: Policy
    requires Message to contain UsernameToken, UsernameToken not found in the Message.
    Can anyone tell me what I am missing?
    Thanks,
    John

    Hi John,
    In your standalone client, use the following two properties to send a
    user name and password to the service so that the client can
    authenticate itself: javax.xml.rpc.security.auth.username
    javax.xml.rpc.security.auth.password
    See the docs [1]
    Hope this helps,
    Bruce
    [1]
    http://edocs.bea.com/wls/docs81/webserv/security.html#1073863
    John H wrote:
    >
    I am trying to create a client that can access a WSSE enabled web service through
    the generated java proxy. For now all I am asking for in the .wsse file is the
    username and password with the line <token tokenType="username"/>. In the client
    I am setting the username and password token exactly as the BEA documentation
    describes:
    UserInfo ui = new UserInfo("myuser", "mypassword");
    session.setAttribute(WSSEClientHandler.REQUEST_USERINFO, ui);
    Yet I am getting the following error message when I try to run the client:
    java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException:
    EJB Exception: ; nested exception is:
    com.bea.wlw.runtime.jws.wssecurity.exception.WLWWSSEException: Policy
    requires Message to contain UsernameToken, UsernameToken not found in the Message.
    Can anyone tell me what I am missing?
    Thanks,
    John

  • How to test a Java Web Service locally?

    I developed simple java web services.
    Now I want to test them locally.
    I want to expose my web service through my Web Server(Tomcat).
    How can I expose that webservice?
    After that I want to access my web service through a Internet Browser.
    Is it possible to test that web service locally (localhost)?
    My computer is not connected to a network or internet.
    My OS is Windows XP Professional.

    I just set up TCPMON. Considering it is free and the fact that it has more than just a basic UI, I am quite impressed. I also use SOAPscope, which is another great tool, but I am looking for a free option.
    My issue: I set up TCPMON to sniff messages sent over HTTPS through port 8080. But I am getting encrypted messages upon sending the SOAP request as follows:
    �b�b�b�bvC�Ym�)f��OvC�Ym�)f��W�O�k�v�W&#65533;�dQ�$�{� �4�����F&#65533;������vO���XEC
    )��~9gl^�OvC�Ym�)f��W�O�k�v�W&#65533;�dQ�$�{� �4�����F&#65533;������vO���XEC
    )��~9gl^�OvC�Ym�)f��W�O�k�v�W&#65533;�dQ�$�{� �4�����F&#65533;������vO���XEC
    )��~9gl^�
    Any clue why?
    Your help is greatly appreciated.
    Aish

  • How to use Axis to access a web service through Authentication  proxy

    Using axis access internat web service is success,but access a web service through Authentication proxy is failure.But other java classes connect through a proxy to the internet which works very well:
    please help me ,thank you!!!
    import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;
    import javax.xml.namespace.QName;
    //this is my access webservice faliure   codes
    public class TestClient
       public static void main(String [] args) {
           try {
                System.getProperties().setProperty("http.proxySet", "true");
                System.getProperties().setProperty("http.proxyHost","proxy.com");
                System.getProperties().setProperty("http.proxyPort", "8080");
                System.getProperties().setProperty("http.proxyUser", "username");
                System.getProperties().setProperty("http.proxyPassword","password");
               String endpoint =
                        "http://nagoya.apache.org:5049/axis/services/echo";
               Service  service = new Service();
               Call     call    = (Call) service.createCall();
               call.setTargetEndpointAddress( new java.net.URL(endpoint) );
               call.setOperationName(new QName("http://soapinterop.org/", "echoString") );
               String ret = (String) call.invoke( new Object[] { "Hello!" } );
               System.out.println("Sent 'Hello!', got '" + ret + "'");
           } catch (Exception e) {
               System.err.println(e.toString());
       }I get an "(407)Proxy authorization required" error?

    I am also looking for a solution. Does any one know how to do through code instead of jvm settings?
    Thanks in advance!

  • Error While Consuming Public Web Service through Stand Alone Proxy

    Hi,
    I am getting the below error when I am consuming a public web service through Stand Alone Proxy.
    java.rmi.RemoteException: Service call exception; nested exception is:
         com.sap.engine.services.webservices.jaxrpc.exceptions.InvalidResponseCodeException: Invalid Response Code: (407) Proxy Authentication Required ( The ISA Server requires authorization to fulfill the request. Access to the Web Proxy filter is denied.  ).
         at com.mindtree.examples.GlobalWeatherSoapStub.getCitiesByCountry(GlobalWeatherSoapStub.java:159)
         at com.mindtree.examples.GlobalWeatherSoapStub.getCitiesByCountry(GlobalWeatherSoapStub.java:168)
         at com.mindtree.examples.WebServiceClient.main(WebServiceClient.java:18)
    Caused by: com.sap.engine.services.webservices.jaxrpc.exceptions.InvalidResponseCodeException: Invalid Response Code: (407) Proxy Authentication Required ( The ISA Server requires authorization to fulfill the request. Access to the Web Proxy filter is denied.  ).
         at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.handleResponseMessage(MimeHttpBinding.java:903)
         at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.call(MimeHttpBinding.java:1346)
         at com.mindtree.examples.GlobalWeatherSoapStub.getCitiesByCountry(GlobalWeatherSoapStub.java:152)
         ... 2 more
    Regards,
    Venkatesh

    Hi,
    I am still facing the same issue.
    Regards,
    Venkatesh

  • Exception while accessing web service through code

    I have a web service developed using AXIS deployed on Weblogic 8.1
    Another web application cotaining GUI deployed on Weblogic 10 tries to access this web service through code.
    This piece of code to invoke the web service is written in Action Class present inside web application. (Struts is used in GUI based web app)
    When the code tries to invoke web service I am getting following error.
    (401)Unauthorized xxx
         at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:630)
         at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:128)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:180)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2564)
         at org.apache.axis.client.Call.invoke(Call.java:2553)
         at org.apache.axis.client.Call.invoke(Call.java:1753)
         at com.ebv.app.web.action.UCS77_1ProcessOfficialChangeSaveDetailsAction.invokeAx(UCS77_1ProcessOfficialChangeSaveDetailsAction.java:243)
         at com.ebv.app.web.action.UCS77_1ProcessOfficialChangeSaveDetailsAction.callUCS77_1ProcessOfficialChangeWebService(UCS77_1ProcessOfficialChangeSaveDetailsAction.java:173)
         at com.ebv.app.web.action.UCS77_1ProcessOfficialChangeSaveDetailsAction.processAction(UCS77_1ProcessOfficialChangeSaveDetailsAction.java:133)
         at com.ebv.framework.web.action.EBVAction.execute(EBVAction.java:106)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    The web service URL is as follows:
    http://10.140.96.5:7808/services/ucs77_1/ProcessOfficialChangeSave77_1-v0001.soap
    However
    When I try to hit the webservice URL directly on browser login window appears where same username/password I provide which are passed in code to invoke the web service. I get the success page indicating that web service is invoked on hitting enter.
    The method used in UCS77_1ProcessOfficialChangeSaveDetailsAction.java to invoke web service is as follows:
    public String invokeAx
                   String xmlMessage,
                   String webServiceURL,
                   String webServiceOperation,
                   String username,
                   String password)
              String xmlResponse = null;
              Call webServiceCall = null;
              InputStream input = new ByteArrayInputStream(xmlMessage.getBytes());
              Service service = new Service();
              try
                   webServiceCall = (Call) service.createCall();
                   SOAPEnvelope env = new SOAPEnvelope(input);
                   SOAPEnvelope resEnv = null;
                   webServiceCall.setTargetEndpointAddress(new URL(webServiceURL));
                   webServiceCall.setOperationName(new QName(webServiceOperation));
                   webServiceCall.setUsername(username);
                   webServiceCall.setPassword(password);               
                   try
                        resEnv = webServiceCall.invoke(env);
                   catch (AxisFault e)
                        e.printStackTrace();
                        Message responseMessage = webServiceCall.getResponseMessage();
                        SOAPEnvelope soapXml = (SOAPEnvelope) responseMessage.getSOAPEnvelope();
                        xmlResponse = new String(soapXml.toString().getBytes(AppConstants.UTF8),AppConstants.UTF8);     
                   if (xmlResponse == null)
                        xmlResponse = resEnv.toString();
              catch (Exception e1)
                   e1.printStackTrace();
              return xmlResponse;
    Both the weblogic server reside on two different AIX machines.
    Can anybody tell what's the problem while invoking web service through code?

    time to look into the gateway logs as stated by the fault ..
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode xmlns:p="http://schemas.oblix.com/ws/2003/08/Faults">c</faultcode><faultstring>Step execution failed with an exception</faultstring><detail></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
    looks like the cipher step might have failed

  • Netbeans calls MS Web Service through BPEL

    I get the followng error when trying to invoke a microsoft web service through bpel:
    Pattern for exchange Id 206195522970609-30893-134221047015560007 is http://www.w3.org/2004/08/wsdl/in-out
    This is from the exception block.
    com.sun.bpel.model.meta.impl.RInvokeImpl@538425={<?xml version="1.0" encoding="utf-8" ?>
    <invoke name="Invoke2"
    partnerLink="PartnerLink9"
    portType="ns1:Service1Soap"
    operation="HelloWorld"
    inputVariable="HelloWorldIn4"
    outputVariable="HelloWorldOut4"></invoke>}
    [Fatal Error] :1:1: Content is not allowed in prolog.
    Fault Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault is not handled in the current scope. Sending faults for the pending requests in the current scope before propagating the fault to the enclosing scope.
    Setting MessageEx id 206195522970609-30893-134221047013250005 with error: Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault
    System exception occured while executing a business process instance.
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.doResumeAction(BPELProcessInstanceImpl.java:704)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.handleFault(BPELProcessInstanceImpl.java:432)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.InvokeUnitImpl.handleFault(InvokeUnitImpl.java:662)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.SyntheticThrowUnitImpl.doAction(SyntheticThrowUnitImpl.java:92)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:145)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Failed to process status of InOut - M Ex 206195522970609-30893-134221047015560007
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.terminate(BPELProcessManagerImpl.java:655)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:231)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Invoking a java web service is fine. Is there something I'm missing?

    I get the followng error when trying to invoke a microsoft web service through bpel:
    Pattern for exchange Id 206195522970609-30893-134221047015560007 is http://www.w3.org/2004/08/wsdl/in-out
    This is from the exception block.
    com.sun.bpel.model.meta.impl.RInvokeImpl@538425={<?xml version="1.0" encoding="utf-8" ?>
    <invoke name="Invoke2"
    partnerLink="PartnerLink9"
    portType="ns1:Service1Soap"
    operation="HelloWorld"
    inputVariable="HelloWorldIn4"
    outputVariable="HelloWorldOut4"></invoke>}
    [Fatal Error] :1:1: Content is not allowed in prolog.
    Fault Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault is not handled in the current scope. Sending faults for the pending requests in the current scope before propagating the fault to the enclosing scope.
    Setting MessageEx id 206195522970609-30893-134221047013250005 with error: Processing Error. Fault Name is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault and Fault Value is {http://sun.com/wsbpel/2.0/process/executable/fault}systemFault
    System exception occured while executing a business process instance.
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.doResumeAction(BPELProcessInstanceImpl.java:704)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.BPELProcessInstanceImpl.handleFault(BPELProcessInstanceImpl.java:432)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.InvokeUnitImpl.handleFault(InvokeUnitImpl.java:662)
    at com.sun.jbi.engine.bpel.core.bpel.model.runtime.impl.SyntheticThrowUnitImpl.doAction(SyntheticThrowUnitImpl.java:92)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:145)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Failed to process status of InOut - M Ex 206195522970609-30893-134221047015560007
    java.lang.NullPointerException
    at com.sun.jbi.engine.bpel.core.bpel.debug.BPELProcessRefImpl.removeProcessInstance(BPELProcessRefImpl.java:109)
    at com.sun.jbi.engine.bpel.core.bpel.debug.VirtualBPELEngineImpl.removeProcessInstance(VirtualBPELEngineImpl.java:134)
    at com.sun.jbi.engine.bpel.core.bpel.debug.DefaultDebugger.processInstanceDied(DefaultDebugger.java:502)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.instanceComplete(BPELProcessManagerImpl.java:852)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.terminate(BPELProcessManagerImpl.java:655)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELInterpreter.execute(BPELInterpreter.java:231)
    at com.sun.jbi.engine.bpel.core.bpel.engine.BusinessProcessInstanceThread.execute(BusinessProcessInstanceThread.java:76)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.BPELProcessManagerImpl.process(BPELProcessManagerImpl.java:818)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:261)
    at com.sun.jbi.engine.bpel.core.bpel.engine.impl.EngineImpl.process(EngineImpl.java:742)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processStatus(BPELSEInOutThread.java:376)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.processMsgEx(BPELSEInOutThread.java:204)
    at com.sun.jbi.engine.bpel.BPELSEInOutThread.run(BPELSEInOutThread.java:158)
    Invoking a java web service is fine. Is there something I'm missing?

  • The Best Java Web Services Technology for Developing Web Services

    Hi,
    I am new to Web services world.
    I read the java web services page . there are more than 6 technologies.
    JAX-WS,
    JAX-RPC,
    JAXB,
    SAAJ,
    JAXP,
    WSIT,
    XWS-Security
    I went through several documents on web services.
    I could not get a clear idea of which technolgy to use.
    Which Java web service technology will be the best to develop web services independant of language, platform.
    or is there any 3rd party implemetations available ? for rapid development of web services.
    Could anyone help me !.
    Thanks in advance.
    Message was edited by:
    Siva.Prakash

    Which Java web service technology will be the best
    to develop web services independant of language,
    platform.
    Java by nature is a cross-platform language, so if your focus is on the need for portability, the choisce of WS should not be a problem. However, each WS is best suited for paricular uses.
    SAAJ, a low-level level API, offers much simplicity, but is not the first choice for programmers, as SOAP (Simple Object Access Protocol)messages need to be constructed piece by piece, making it a quite arduous code to program.
    If you are not familiar with XML, your best bet would be to use JAX-RPC (Java API for XML-Remote Procedure Calls), as it hides the underlying detail from the programmer, in terms of SOAP and XML. The shortcoming with RPC-based WS is that it is "restricted to the local programming experience". Another failing is that assumes there is a network path- a reliability concern.
    If your program will be contacting other services during downtimes, unlike JAX-RPC, JAXM is quite useful. However, your listing did not mention it, so I wont cover it.
    JAXR is a client-side only API that acts as an interface between registries (not referring to JAXP)
    I am not famiiar with JAXB, JAXP, WSIT or XWS-Security..
    or is there any 3rd party implemetations available ?It depends on what platform you are used to. Assuming you are familiarized with the J2EE platform (now changed to Java EE SDK), the NetBeans IDE (either 5.5, 5.5.1 or the latest editiion) is quite useful. I am using 5.5.1, but have found that it is quite buggy, especially when adding WS operations, a core requirement of a WS. if you will be using to devlop a service for an immediate need, you may find the learning curve to be a bit high, in terms of getting to grips with how to use it. (Download link:
    http://www.netbeans.info/downloads/index.php)
    The IBM Autonomic IDE (or AIDE), based on the WSDM standard, includes 3 sub-tools, icluding the IBM Manageability Endpoint Builder which, according to their website, allows individuals to build endpoints to allow manageability interface exposure; Manageable Resource Browser and the IBM Manageability Endpoint Simulator. However, I'm not familiar with this IDE. (Download link: http://www.alphaworks.ibm.com/tech/aide/download)
    The .NET Framework uses the Visual Studio IDE. For an unbiased comparison of J2EE and the .NET Framework in terms of WS, see http://www.webservicesarchitect.com/content/articles/hanson01.asp.
    Apache Axis2, Geronimo and JiBX allows fast development of WS, or so the creators profess.
    The PHP environment- you could try NuSPHERE PHPed. According to one website, with it you can develop a web service in under an hour.
    I hope this was useful to you.
    [Based partly on Topley, K. (2003) [i]Java TM Web Services in a Nutshell: A desktop Quick Reference. 1st ed. California: O�Reilly & Associates, Inc]

  • Error when calling Java Web Services from ABAP.

    Hello experts:
        In my project, I will call Java Web Services with ABAP coding. With WSDL, I generated a proxy class and created a HTTP connection (t-code: SM59) and a logical port (t-code:lpconfig) for this proxy class. But when running, I would receive the folllowing errors:
       SOAP:1.023 SRT: Processing error in Internet Communication Framework: ("ICF Error when receiving the response: HTTP COMMUNICATION FAILURE")
       If I used HTTPS, there is no problem.
    Regards
    Bob

    Hi Bob,
    It might be the possibility that your java web server is configured to listen only on HTTPS.
    If your HTTPS is working fine, then first check with your JAVA server for HTTP connectivity, then try it calling through ABAP.
    Regards,
    Piyush

  • Problem to call web service through WSDL2Java

    Hi All,
    I am gettig the error message while trying to run the below code to call web service:
    Code:
            org.apache.axis.client.Call _call = createCall();
            _call.setOperation(_operations[0]);
            _call.setUseSOAPAction(true);
           _call.setSOAPActionURI("");
            _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
            _call.setOperationName(new javax.xml.namespace.QName("http://10.171.44.97/service", "testWS"));
            setRequestHeaders(_call);
            setAttachments(_call);
            System.out.println("before invoke");
         java.lang.Object _resp = _call.invoke(new java.lang.Object[] {input});--------------------------------------------------------------------------
    Error-
    org.xml.sax.SAXException: Error: URI=null Line=3: Illegal
    xml:lang value "".----------------------------------
    I would appreciate if anyone can help me out.
    Thanks in advance.
    Regards
    Sachin

    Hi,
    Jason Straub's excellent [Flexible Web Service API|http://jastraub.blogspot.com/2008/06/flexible-web-service-api.html] could be just what you need.
    The blog posting also describes how to integrate the code into your page.
    Regards,
    Georger
    sundhar.v wrote:
    Hi
    Can we call web service through loop, If so how we can do.
    I wanted to transfer n records ex:100. to pass one record i need to call web service, like that to pass 100 records i need to call 100 times webservices and store results of each.
    Have created web reference and form so that it can send one record on submit and return's result to text box.
    I need to call this Web Service Request     page process through another plsql process.
    How can we resolve this.
    Thanks
    Sundhar

  • Java Web Services Developer Pack 1.5 and SOAP?

    Hi all,
    I'm trying to figure out what, if any, support does Java Web Services Developer Pack 1.5 have for parsing and dealing with SOAP messages. I couldn't find any documentation or info in the tutorial about it, but founds some packages through JavaDoc that seem to deal with SOAP. Does anyone know what the deal is? Do you use this toolkit for SOAP, maybe even WS-security?
    Thanks for any pointers!
    Olia

    You can use JWSDP 1.3 but the minimum requirement form that toolkit is JDK 1.4. So you need to download the JDK 1.4 from http:/java.sun.com and install it first and after that you can install that JWSDP 1.3. Good Luck.

  • Java web services help needed

    i am a student. working on a project. using java web services. using its api jax-rpc. i have compiled, deployed and run an example given in the tutorial of the web services tutorial\examples\jaxrpc\hello. now i want to bring the "hello" folder out of its original directory to e.g c:\project\. i have tried alot. i am not able to set the paths in the xml files provided. if any one of you can help me in this. my address is [email protected] . i am waiting for your reply.

    Where are you stuck up.
    Try the following steps
    create a directory structure
    c:\projects\jaxrpc
    copy your example
    <JWSDP>/docs/tutorial/examples/jaxrpc/hello to
    c:\projects\jaxrpc
    you may need to remove \build and \dist from the
    example if you have already tried the example
    copy your example
    <JWSDP>/docs/tutorial/examples/jaxrpc/common to
    c:\projects\jaxrpc
    Now the example will run correctly but only the war
    file is created in your original tutorial location.
    Now modify tut-root in
    c:\projects\jaxrpc\common\build.properties to
    tut-root=C:\\projects
    and modify the war-path in \hello\build.properties to
    point to
    war-path=${tut-root}/jaxrpc/${example}/dist/${deployabl
    -war}
    If anything fails first check the paths through
    <YOUR_path>\hello>ant debug
    If there is problem post details where it is failing.
    Ri am trying this method. i will tell you when it is done. thank you.

  • Java Web Services Developer Pack v1.2

    I recently installed J2SE v1.4.2 Beta on my computer and it works fine with the platform, which is Windows XP Home Edition.
    Now, I like to learn Java Servlet Technology and had searched through the downloads pages. I found Java Web Services Developer Pack v1.2. But I have doubt about this: Is there any problem to run Java Web Services Developer Pack on Windows XP HOME Edition? I learnt that Sun engineers had it tested on Windows XP Professional Edition.
    I will appreciate any comments and opinions. Thanks in advance!

    doesn't mean it won't work on home edition. just means that they probably think anyone who might want to use J2WSDP will prob have Pro...

  • Java Web Services wrapper and connection management.

    We are currently evaluating the use of the SES Java web-services for a custom front end. I've downloaded the sample code and have read through the documentation but I'm confused on a few points.
    We will be OSSO protecting the app, so the flow I think I need to use is (on the OracleSearchService object):
    *setSoapURL
    *proxyLogin
    *setSearchUser
    *doOracleSearch
    (do whatever with results)
    From what I can tell each one of these does a separate call into the actual web service. Does this keep a connection open between these calls and if so how do we need to manage our connections in this case. Is there an explicit close method we should be calling? I see that we can get an OracleSoapHTTPConnection from the undocumented getConnection method on OracleSearchService but I'm unsure if we are supposed to interact with it directly.
    In a related vein how should we managing our OracleSearchService objects? Should we save an instance for each user in our httpSession, or just create a new instance on each call?
    Any insights appreciated,
    Jason

    No Problem at all
    Nomally the Web Service is big different between Web application. or you can build your Web service structure like web application structure. It depends on the web server:
    If the Web Server of hosting company has WEB Service framework, you just need know how to deploy your Web service to Web Service framework and How to deploy to Web Server. In this case, you need deploy it two time, one is for Web Server framework and one is for Web Service framework
    If the Web Server of hosting company doesn't has WEB Service framework, you need build your own Web Service framework into a web application, then you just need know how to deploy your web application with Web service into Web Server framework

Maybe you are looking for

  • Copy SapScript Window to another Form?

    Hello, is it possible to copy a window from an existing SapScript form to another form (on the same client)? If so, how can this be managed? Thanks in advance,   Arne Schultz

  • When is Apple going to fix the iTunes 11 syncing problem!!!!

    After troubleshooting the iTune 11 upgrade seems to cause syncing problems for everyone. I've tried everything and my ipod will no longer sync. Help! When is Apple going to apply a fix for this?????

  • Looking for ext speakers for MacBook Pro

    My built-in speakers go off a lot so looking for some speakers under $100 street price (could be used) to go with my MacBook Pro.  I listen to wide variety of music but the only ones I've tried so far, Logitech Z320's had no treble or upper midrange

  • ACE & ACE application Firewall

    Hi, What is the difference between ACE appliance and the new ACE web based application firewall appliance? Is it different appliances? Also what is the best scenario to combine the two appliances in the same network? Thanks

  • Best practices using IronPort

    This section is to share real-world stories about how folks have configured their IronPorts. What really works (or doesn't) out there in the IronPort Nation?