Creating JAX-WS client without generating portable artifact

Hey.
Is there a way to create and call web service only knowing the wsdl location?
Now I have been generating client from wsdl. But is there a way to do that without generating service classes to client from wsdl?

yes, you can use the Dispatch api.

Similar Messages

  • Jax-WS Client - Change Endpoint Address "https" to "http" - Cause HTTP 302

    Hi,
    I don't know it is a bug or not, but i couldn't find any answer for this.
    I try to write a client for an SSL Secured and Basic Authenticated web service. To access the WSDL url, i have a VPN connection to that network. Also i registered their certificate to the JVM that i used to run the Client.
    To create Jax-WS Client codes, i used "......\jaxws-ri\bin\wsimport.bat -s src -d bin -p model https://xxxx.com/xxxxxx.asmx?WSDL" as explained.
    After successfully generated sources, i added my "SecurityEnvironmentHandler.java" to catch Username and Password callbacks, and also added "SecurityHandler.java" to register my handler and surrund with necessary SOAP Header Security tags. I register them as explained too.
    Everything looks fine, but when i try to run Client test which basically call one of the services, i get
    com.sun.xml.ws.client.ClientTransportException: The server sent HTTP status code 302: Found
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.checkStatusCode(HttpTransportPipe.java:203)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:177)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:93)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:598)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:557)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:542)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:439)
         at com.sun.xml.ws.client.Stub.process(Stub.java:222)
         at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:135)
         at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:109)
         at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:89)
         at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:118)
         at $Proxy36.xxxxxxxxxxx(Unknown Source)
         at xxxxxxxxServisImpl.xxxxxxxxxxxxx(xxxxServisImpl.java:69)
         at xxxxxxxxxServisTest.testxxxxxxx(xxxxxxServisTest.java:57)
         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:585)
         at junit.framework.TestCase.runTest(TestCase.java:154)
         at junit.framework.TestCase.runBare(TestCase.java:127)
         at org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:69)
         at junit.framework.TestResult$1.protect(TestResult.java:106)
         at junit.framework.TestResult.runProtected(TestResult.java:124)
         at junit.framework.TestResult.run(TestResult.java:109)
         at junit.framework.TestCase.run(TestCase.java:118)
         at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
         at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
         at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)( i have changed some unnecessary parts with "xxxxxx" )
    The basic of it i get an "*HTTP 302*" which means it tries to redirect the request.
    Also i had an working copy of a sample Client which was written with Jax-RPC. I looked the generated SOAP Messages for both of clients, they was almostly the same.
    After lots of tries, i found the problem, somehow after the client application starts, it changes the Endpoint Address "https://xxxxxxxx.com/xxxx.asmx" to "http://xxxxxxxxx.com/xxx.asmx", ( it drops the "s" wich means it changes the protocol HTTPS to HTTP ).
    If i set the Endpoint Address to "https://xxxxxxxx.com/xxxx.asmx" before calling any service on port, it works as it should be.
    On the "generated" main WebServiceClient class the WSDL address and also Endpoint Address were set correctly ( with https ).
    Also do i missing any logical part of it? Because i didnt changed it, it generated from WSDL by using "wsimport", it couldnt be a mistake, of if it would be, somebody could see that.
    Thanks for any advice.
    Umut KUNDUKAN

    Welcome to the forum. Please don't post in threads that are long dead. When you have a question, start your own topic. Feel free to provide a link to an old post that may be relevant to your problem.
    I'm locking this thread now.

  • XML Parser Error while creating Web service Client using JAX RPC

    hello evryone,
    Im facing XML Parser Error while creating web service client using JAX RPC. Im using Net Beans IDE for development purpose. I have wrote configuration file for client. Now i want to create Client stub. However i dont know how to do this in Net Beans. So i tried to do it from Command promt using command :
    wscompile -gen:client -d build -classpath build config-wsdl.xml
    here im getting Error:
    error parsing configuration file: XML parsing error: com.sun.xml.rpc.sp.ParseException:10: XML declaration may only begin entities
    Please help me out.
    Many thanks in advance,
    Kacee

    Can i use the client generated using jdeveloper 11g to import into the oracle forms 10g, i.e., form builder 10g. Currently this is the version we have in our office.

  • How to create a WEB client in EJB module in NB 4.1 ?

    hi
    I am using SUN AS and NB 4.1
    I want to invoke a WS from an EJB. For some reason NB 4.1 doesn't allow me to create a WS client. Why ?

    netbeans forum may prove to be more useful because
    this seems to be a netbeans specific problem; an EJB
    can be a WS client and this works as is evident with
    the Adventure Builder sample app from blueprintsI generated WS stub manually without NB 4.1.

  • Creating web service client/server

    Try to ask a question in regarding to creating web service client/server:
    First, please see the attachment for a simplized WSDL file:
    Based on which, I can create a web service client. Now, can I create a web service provider (server) by using the same wsdl file? If not, what change do I need to make?
    Thanks
    Scott
    ----WSDL-------
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tns="http://www.example3.org/testWSDL2/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    name="testWSDL2"
    targetNamespace="http://www.example3.org/testWSDL2/">
    <wsdl:types>
    <xsd:schema targetNamespace="http://www.example3.org/testWSDL2/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="NewOperation">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="in" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="NewOperationResponse">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="out" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    </wsdl:types>
    <wsdl:message name="NewOperationRequest">
    <wsdl:part element="tns:NewOperation" name="parameters"/>
    </wsdl:message>
    <wsdl:message name="NewOperationResponse">
    <wsdl:part element="tns:NewOperationResponse" name="parameters"/>
    </wsdl:message>
    <wsdl:portType name="testWSDL2">
    <wsdl:operation name="NewOperation">
    <wsdl:input message="tns:NewOperationRequest"/>
    <wsdl:output message="tns:NewOperationResponse"/>
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="testWSDL2SOAP" type="tns:testWSDL2">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="NewOperation">
    <soap:operation soapAction="http://www.example3.org/testWSDL2/NewOperation"/>
    <wsdl:input>
    <soap:body use="literal"/>
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal"/>
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="testWSDL2">
    <wsdl:port binding="tns:testWSDL2SOAP" name="testWSDL2SOAP">
    <soap:address location="http://abc.example.net/test"/>
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>

    the web service is the specification for whatever functionality you wish to provide
    there are a few artifacts you can auto-generate using the WSDL, but you still need to create a client and server application
    the web service is simply exposing the application remotely and the WSDL is the contract
    http://java.sun.com/webservices/docs/1.6/tutorial/doc/index.html

  • Where are the client stubs generated

    I am using weblogic 8, so i understand that the client stub is generated by the container when the my ejbs are deployed.
    But where is this jar file created.
    Is there a tool which i can use to generate the .jar file once my ejb is delployed.
    Thank you
    Rahul

    (Found something on this for weblogic 6 ..maybe this holds true for weblogic 8) ..still cant figure out exactly where it creates the stub.. might have to try it out and search BEA_HOME
    WebLogic Server supports the use of ejb-client.jar files.
    The ejb-client.jar contains the home and remote interfaces, the primary key class (as applicable), and the files they reference. WebLogic Server does not add files referenced in your classpath to ejb-client.jar. This enables WebLogic Server to add necessary custom classes to the ejb-client.jar without adding generic classes such as java.lang.String.
    For example, the ShoppingCart remote interface might have a method that returns an Item class. Because this remote interface references this class, and it is located in the ejb-jar file, it will be included in the client jar.
    You configure the creation of an ejb-client.jar file in the bean's ejb-jar.xml deployment descriptor file.When you compile the bean with ejbc, WebLogic Server creates the ejb-client.jar.
    To specify an ejb-client.jar:
    1. Compile the bean's Java classes into a directory, using the javac compiler from the command line.
    2. Add the EJB XML deployment descriptor files to the compiled unit using the guidelines in WebLogic Server EJB Deployment Files.
    3. Edit the ejb-client-jar deployment descriptor in the bean's ejb-jar.xml file, as follows, to specify support for ejb-client.jar:
    <ejb-client-jar>ShoppingCartClient.jar</ejb-client-jar>
    4. Generate the container classes that are used to access the bean using weblogic.ejbc and create the ejb-client.jar using the following command:
    $ java weblogic.ejbc <ShoppingCart.jar>
    Container classes include both the internal representation of the EJB that WebLogic Server uses, as well as implementation of the external interfaces (home, local, and/or remote) that clients use.
    External clients can include the ejb-client.jar in their classpath. Web applications would include the ejb-client.jar in their /lib directory.
    Note: WebLogic Server classloading behavior varies, depending on whether or not the client is stand-alone. Stand-alone clients with access to the ejb-client.jar can load the necessary classes over the network. However, for security reasons, programmatic clients running in a server instance cannot load classes over the network.

  • JAX-RPC client with JDeveloper 12c

    Hello,
    It's the first time I use jax-rpc (I'm used to jax-ws) and looking for help.
    I need to create a client for a JAX-RPC web service using JDeveloper 12c.
    The customer provided to me a WSDL file (I don't have access to the webservice yet). In JDeveloper I created as usual a "Web Service Client and Proxy" providing that wsdl file, but I think the generated code is for a JAX-WS (since there are @WebMethod, @WebServiceClient and @WebService notations that I understood should not be present in JAX-RPC clients.
    Can anyone point me to some documentation about JAX-RPC client developing in JDeveloper 12?
    Thank you,
    Marco

    To make things a little more clearer, this is a post of the error gotten at runtime...
            java.lang.NoSuchMethodError: java.util.Collections.emptyList()Ljava/util/List;
            at com.sun.xml.messaging.saaj.soap.MessageImpl.<clinit>(MessageImpl.java:755)
            at com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl.createMessage(SOAPMessageFactory1_1Impl.java:47)
            at com.sun.xml.rpc.soap.message.SOAPMessageContext.createMessage(SOAPMessageContext.java:137)
            at com.sun.xml.rpc.client.StreamingSenderState.<init>(StreamingSenderState.java:30)
            at com.sun.xml.rpc.client.StubBase._start(StubBase.java:92)
            at mck.practise.oracle.plsql.PlsqlService_Stub.sayHello(PlsqlService_Stub.java:54)
            at mck.practise.oracle.plsql.HelloWorld.sayRPCHello(HelloWorld.java:34)
            at mck.practise.oracle.plsql.HelloWorld.main(HelloWorld.java:22)The suprising thing is that if I change the application's java platform from JDK 1.4 to Java 5 using the netbeans projects property window, everything works fine.
    Can anyone still suggest on this.
    Regards,

  • Missing " Create Sample Java Client" from the context menu when debugging

    Jdev 11.1.1.3 on Windows 7 x64
    I have created an EJB - Session Bean from the ADF components and have put some logic into it with one public method.
    I have exposed the method in the local interface.
    I start the integrated server in the debug mode
    When I right-click there is no option to do the sample client.
    Am I missing a plug-in - like JUnit or something?
    From the manual:
    The integrated Oracle WebLogic Server runs within JDeveloper. You can run and test EJBs quickly and easily using this server, and then deploy your EJBs with no changes to them. You do not need to create a deployment profile to use this server, nor do you have to initialize it.
    To run a sample client on the integrated Oracle WebLogic Server: In the Application Navigator, right-click on an EJB and choose Run.
    Notice in the Message pane that Oracle WebLogic Server has been launched. Right-click on an EJB and choose Create Sample Java Client from the context menu. The default choice is to create a client for the integrated Oracle WebLogic Server, so click OK.
    The client is created and opens in the code editor. If your session bean serves as a facade over JPA entities, code is generated to instantiate the query methods. If you exposed methods on your bean, the generated client contains methods that can be uncommented to call them.
    After your EJB has been successfully started from the Application Navigator, right-click on the sample client and choose Run.

    Shay,
    Pretty much what I did exactly - except - since my apps are all using the local interface - I did not create the remote.
    This may be an old habit - but generally it is not a good practice to do both - though this may have changed lately.
    I have this app working and the EJBs are executing fine.
    I used a testview and drug the method onto it - and was able to debug it that way - but still no create java client in the menu.
    Is there any other place to find this other than the context menu? Then I can check to see if it is available.
    I am using WLS 10.3 that ships with Jdev 11.1.1.3 (forgot that little bit) without any changes.

  • How can I change namespace prefix for JAX-RPC client request?

    I'm creating a JAX-RPC client to invoke a RPC/encoded web service. The service was generated from a ColdFusion program and for some reason when the SOAP namespace prefix is anything but "soapenv" it returns text/html instead of text/xml. Currently the client is sending requests with the prefix "env" and I'd like to change it to "soapenv".
    I created a type of javax.xml.rpc.handler.GenericHandler and attempted to do the follow:
    @Override public boolean handleRequest(MessageContext p1) {
         SOAPMessage msg = ((SOAPMessageContext) p1).getMessage(); 
         try {
              SOAPPart part = msg.getSOAPPart();
              SOAPEnvelope envelope = part.getEnvelope(); 
              envelope.setPrefix("soapenv"); 
              msg.saveChanges(); 
         } catch(SOAPException ex) {
              // TODO
              return false;
         return true;
    However I get the following exception:
    java.rmi.RemoteException: SOAPFaultException - FaultCode [{http://schemas.xmlsoap.org/soap/envelope/}Server] FaultString [UNIMPLEMENTED ] FaultActor [null] Detail [<detail><bea_fault:stacktrace xmlns:bea_fault="http://www.bea.com/servers/wls70/webservice/fault/1.0.0">java.lang.AssertionError: UNIMPLEMENTED
    at weblogic.xml.domimpl.NodeImpl.setPrefix(NodeImpl.java:173)
    at test.MyHandler.handleRequest(MyHandler.java:33)
    at weblogic.wsee.handler.JaxrpcHandlerChain.handleRequest(JaxrpcHandlerChain.java:58)
    at weblogic.wsee.ws.dispatch.server.JaxrpcChainHandler.handleRequest(JaxrpcChainHandler.java:102)
    at weblogic.wsee.handler.HandlerIterator.handleRequest(HandlerIterator.java:141)
    at weblogic.wsee.handler.HandlerIterator.handleRequest(HandlerIterator.java:107)
    at weblogic.wsee.ws.dispatch.client.ClientDispatcher.dispatch(ClientDispatcher.java:132)
    at weblogic.wsee.ws.WsStub.invoke(WsStub.java:87)
    at weblogic.wsee.jaxrpc.StubImpl._invoke(StubImpl.java:341)
    at test.Approvedsuppliers_Wrap_Stub.echo(Approvedsuppliers_Wrap_Stub.java:31)
    at test.Approvedsuppliers_WrapPortClient.echo(Approvedsuppliers_WrapPortClient.java:130)
    at test.Approvedsuppliers_WrapPortClient.main(Approvedsuppliers_WrapPortClient.java:43)
    Is there any workaround? I appreciate any feedback.
    Thanks, Bill

    What I ended up doing is converting the SOAP message to a string, replacing the namespace prefix and converting it back to a SOAP message.
    @Override
       public boolean handleRequest(MessageContext messageContext) {
          SOAPMessageContext soapMessageContext = (SOAPMessageContext) messageContext;
          SOAPMessage soapMessage = soapMessageContext.getMessage();
          String soapString = convertSOAPToString(soapMessage);
          soapString = soapString.replaceAll("env:", "soapenv:");
          soapString = soapString.replaceAll("xmlns:env", "xmlns:soapenv");
          SOAPMessage newSoapMessage = convertStringToSOAP(soapString);
          MimeHeaders mimeHeader = newSoapMessage.getMimeHeaders();
          mimeHeader.setHeader("SOAPAction", "");
          soapMessageContext.setMessage(newSoapMessage);
          return true;
       private String convertSOAPToString(SOAPMessage soapMessage) {
          StringWriter stringWriter = null;
          try {
             stringWriter = new StringWriter();
             StreamResult streamResult = new StreamResult(stringWriter);
             TransformerFactory transformFactory = TransformerFactory.newInstance();
             Transformer transformer = transformFactory.newTransformer();
             transformer.transform(new DOMSource(soapMessage.getSOAPPart()), streamResult);
          } catch (TransformerException e) {
             throw new RuntimeException(e);
          } finally {
             close(stringWriter);
          return stringWriter.toString();   
       private SOAPMessage convertStringToSOAP(String soapString) {
          SOAPMessage soapMessage = null;
          ByteArrayInputStream byteInputStream = null;
          try {
             MessageFactory msgFactory = MessageFactory.newInstance();
             soapMessage = msgFactory.createMessage();
             SOAPPart soapPart = soapMessage.getSOAPPart();
             // Load the SOAP text into a stream source
             byte[] buffer = soapString.getBytes();
             byteInputStream = new ByteArrayInputStream(buffer);
             StreamSource source = new StreamSource(byteInputStream);
             // Set contents of message
             soapPart.setContent(source);       
          } catch (SOAPException e) {
             throw new RuntimeException(e);
          } finally {
             close(byteInputStream);
          return soapMessage;
       private void close(Closeable closeable) {
          if(closeable != null) {
             try {
                closeable.close();
             } catch (IOException e) {
                // TODO

  • JAX-WS Client throws NULL Pointer Exception in NW 7.1 SP3 and higher

    All,
    My JAX-WS client is throwing an exception when attempting to create a client to connect to the calculation service. The exception is coming out of the core JAX-WS classes that are part of NetWeaver. (see exception below)
    Caused by: java.lang.NullPointerException
         at com.sap.engine.services.webservices.espbase.client.jaxws.core.SAPServiceDelegate.createDispatchContextExistingPort(SAPServiceDelegate.java:440)
         at com.sap.engine.services.webservices.espbase.client.jaxws.core.SAPServiceDelegate.createDispatchContext(SAPServiceDelegate.java:475)
         at com.sap.engine.services.webservices.espbase.client.jaxws.core.SAPServiceDelegate.createDispatch(SAPServiceDelegate.java:492)
         at com.sap.engine.services.webservices.espbase.client.jaxws.core.SAPServiceDelegate.createDispatch(SAPServiceDelegate.java:484)
         at javax.xml.ws.Service.createDispatch(Service.java:166)
    I have done some research and it appears that as of NetWeaver 7.1 SP3 SAP stopped using the SUN JAX-WS runtime and implemented their own SAP JAX-WS runtime. I also took the time to decompile the jar file that contained the SAPServiceDelegate class which is throwing the null pointer exception. (see method from SAPServiceDelegate below)
        private ClientConfigurationContext createDispatchContextExistingPort(QName portName, JAXBContext jaxbContext)
            BindingData bindingData;
            InterfaceMapping interfaceMap;
            InterfaceData interfaceData;
            bindingData = clientServiceCtx.getServiceData().getBindingData(portName);
            if(bindingData == null)
                throw new WebServiceException((new StringBuilder()).append("Binding data '").append(portName.toString()).append("' is missing!").toString());
            QName bindingQName = new QName(bindingData.getBindingNamespace(), bindingData.getBindingName());
            interfaceMap = getInterfaceMapping(bindingQName, clientServiceCtx);
            interfaceData = getInterfaceData(interfaceMap.getPortType());
            ClientConfigurationContext result = DynamicServiceImpl.createClientConfiguration(bindingData, interfaceData, interfaceMap, null, jaxbContext, getClass().getClassLoader(), clientServiceCtx, new SOAPTransportBinding(), false, 1);
            return result;
            WebserviceClientException x;
            x;
            throw new WebServiceException(x);
    The exception is being throw on the line where the interfaceMap.getPortType() is being passed into the getInterfaceData method. I checked the getInterfaceMapping method which returns the interfaceMap (line above the line throwing the exception). This method returns NULL if an interface cannot be found. (see getInterfaceMapping method  below)
       public static InterfaceMapping getInterfaceMapping(QName bindingQName, ClientServiceContext context)
            InterfaceMapping interfaces[] = context.getMappingRules().getInterface();
            for(int i = 0; i < interfaces.length; i++)
                if(bindingQName.equals(interfaces<i>.getBindingQName()))
                    return interfaces<i>;
            return null;
    What appears to be happening is that the getInterfaceMapping method returns NULL then the next line in the createDispatchContextExistingPort method attempts to call the getPortType() method on a NULL and throws the Null Pointer Exception.
    I have included the code we use to create a client below. It works fine on all the platforms we support with the exception of NetWeaver 7.1 SP3 and higher (I already checked SP5 as well)
          //Create URL for service WSDL
          URL serviceURL = new URL(null, wsEndpointWSDL);
          //create service qname
          QName serviceQName = new QName(targetNamespace, "WSService");
          //create port qname
          QName portQName = new QName(targetNamespace, "WSPortName");
          //create service
          Service service = Service.create(serviceURL, serviceQName);
          //create dispatch on port
          serviceDispatch = service.createDispatch(portQName, Source.class, Service.Mode.PAYLOAD);
    What do I need to change in order to create a JAX-WS dispatch client on top of the SAP JAX-WS runtime?

    Hi Guys,
    I am getting the same error. Any resolution or updates on this.
    Were you able to fix this error.
    Thanks,
    Yomesh

  • Error while creating the HTTP client with destination GB_DPSRetrieve

    Hi All,
    It is an interface R/3 -->XI --> HTTP ( proxy to HTTP ).
    Please find the error log below and throw some light why the HTTP adapter is getting error -
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SAP="http://sap.com/xi/XI/Message/30">
    - <SOAP:Header>
    - <SAP:Main xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" versionMajor="003" versionMinor="000" SOAP:mustUnderstand="1" wsu:Id="wsuid-main-92ABE13F5C59AB7FE10000000A1551F7">
      <SAP:MessageClass>SystemError</SAP:MessageClass>
      <SAP:ProcessingMode>synchronous</SAP:ProcessingMode>
      <SAP:MessageId>DC98499F-7E42-74F1-A41F-0017A4107EE6</SAP:MessageId>
      <SAP:RefToMessageId>DC98499C-A1EA-BEF1-B4DD-00110A63BF06</SAP:RefToMessageId>
      <SAP:TimeSent>2007-11-21T15:51:30Z</SAP:TimeSent>
    - <SAP:Sender>
      <SAP:Party agency="http://sap.com/xi/XI" scheme="XIParty">GovernmentGateway</SAP:Party>
      <SAP:Service>GGMailbox</SAP:Service>
      <SAP:Interface namespace="http://sap.com/xi/E-FILING_GB/2005">DPSretrieve</SAP:Interface>
      </SAP:Sender>
    - <SAP:Receiver>
      <SAP:Party agency="" scheme="" />
      <SAP:Service>SAP_DEV_ERP2005</SAP:Service>
      <SAP:Interface namespace="http://sap.com/xi/HR">HR_GB_EFI_DPSretrieve</SAP:Interface>
      </SAP:Receiver>
      <SAP:Interface namespace="http://sap.com/xi/E-FILING_GB/2005">DPSretrieve</SAP:Interface>
      </SAP:Main>
    - <SAP:ReliableMessaging xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:QualityOfService>BestEffort</SAP:QualityOfService>
      </SAP:ReliableMessaging>
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="PLAINHTTP_ADAPTER">ATTRIBUTE_CLIENT_DEST</SAP:Code>
      <SAP:P1>GB_DPSRetrieve</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Error while creating the HTTP client with destination GB_DPSRetrieve</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    - <SAP:HopList xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
    - <SAP:Hop timeStamp="2007-11-21T15:51:30Z" wasRead="false">
      <SAP:Engine type="BS">SAP_DEV_ERP2005</SAP:Engine>
      <SAP:Adapter namespace="http://sap.com/xi/XI/System">XI</SAP:Adapter>
      <SAP:MessageId>DC98499C-A1EA-BEF1-B4DD-00110A63BF06</SAP:MessageId>
      <SAP:Info>3.0</SAP:Info>
      </SAP:Hop>
    - <SAP:Hop timeStamp="2007-11-21T15:51:30Z" wasRead="false">
      <SAP:Engine type="IS">is.00.lbsth-tb1ci</SAP:Engine>
      <SAP:Adapter namespace="http://sap.com/xi/XI/System">XI</SAP:Adapter>
      <SAP:MessageId>DC98499C-A1EA-BEF1-B4DD-00110A63BF06</SAP:MessageId>
      <SAP:Info>3.0</SAP:Info>
      </SAP:Hop>
    - <SAP:Hop timeStamp="2007-11-21T15:51:30Z" wasRead="false">
      <SAP:Engine type="IS" />
      <SAP:Adapter namespace="http://sap.com/xi/XI/System">HTTP</SAP:Adapter>
      <SAP:MessageId>DC98499C-A1EA-BEF1-B4DD-00110A63BF06</SAP:MessageId>
      <SAP:Info />
      </SAP:Hop>
      </SAP:HopList>
    - <SAP:RunTime xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
      <SAP:Date>20071121</SAP:Date>
      <SAP:Time>155130</SAP:Time>
      <SAP:Host>lbsth-tb1ci</SAP:Host>
      <SAP:SystemId>XIS</SAP:SystemId>
      <SAP:SystemNr>00</SAP:SystemNr>
      <SAP:OS>Windows NT</SAP:OS>
      <SAP:DB>ORACLE</SAP:DB>
      <SAP:Language />
      <SAP:ProcStatus>023</SAP:ProcStatus>
      <SAP:AdapterStatus>000</SAP:AdapterStatus>
      <SAP:User>PISUPER</SAP:User>
      <SAP:TraceLevel>1</SAP:TraceLevel>
      <SAP:LogSeqNbr>000</SAP:LogSeqNbr>
      <SAP:RetryLogSeqNbr>000</SAP:RetryLogSeqNbr>
      <SAP:PipelineIdInternal>SAP_CENTRAL</SAP:PipelineIdInternal>
      <SAP:PipelineIdExternal>CENTRAL</SAP:PipelineIdExternal>
      <SAP:PipelineElementId>60C3C53B4BB7B62DE10000000A1148F5</SAP:PipelineElementId>
      <SAP:PipelineService>PLSRV_CALL_ADAPTER</SAP:PipelineService>
      <SAP:QIdInternal />
      <SAP:CommitActor>X</SAP:CommitActor>
      <SAP:SplitNumber>0</SAP:SplitNumber>
      <SAP:NumberOfRetries>0</SAP:NumberOfRetries>
      <SAP:NumberOfManualRetries>0</SAP:NumberOfManualRetries>
      <SAP:TypeOfEngine client="200">CENTRAL</SAP:TypeOfEngine>
      <SAP:PlsrvExceptionCode />
      <SAP:EOReferenceRuntime type="TID" />
      <SAP:EOReferenceInbound type="TID" />
      <SAP:EOReferenceOutbound type="TID" />
      <SAP:MessageSizePayload>0</SAP:MessageSizePayload>
      <SAP:MessageSizeTotal>2918</SAP:MessageSizeTotal>
      <SAP:PayloadSizeRequest>0</SAP:PayloadSizeRequest>
      <SAP:PayloadSizeRequestMap>0</SAP:PayloadSizeRequestMap>
      <SAP:PayloadSizeResponse>0</SAP:PayloadSizeResponse>
      <SAP:PayloadSizeResponseMap>0</SAP:PayloadSizeResponseMap>
      <SAP:Reorganization>INI</SAP:Reorganization>
      <SAP:AdapterInbound>PLAINHTTP</SAP:AdapterInbound>
      <SAP:AdapterOutbound>IENGINE</SAP:AdapterOutbound>
      <SAP:InterfaceAction>INIT</SAP:InterfaceAction>
      <SAP:RandomNumber>15</SAP:RandomNumber>
      <SAP:AckStatus>000</SAP:AckStatus>
      <SAP:SkipReceiverDetermination />
      <SAP:Receiver_Agreement_GUID>24422A5646443F8E9D975D57A3EE8162</SAP:Receiver_Agreement_GUID>
      </SAP:RunTime>
    - <SAP:PerformanceHeader xmlns:SAP="http://sap.com/xi/XI/Message/30">
    - <SAP:RunTimeItem>
      <SAP:Name type="ADAPTER_IN">INTEGRATION_ENGINE_HTTP_ENTRY</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.5</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="ADAPTER_IN">INTEGRATION_ENGINE_HTTP_ENTRY</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="CORE">INTEGRATION_ENGINE</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="CORE">INTEGRATION_ENGINE</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_RECEIVER_DETERMINATION</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_RECEIVER_DETERMINATION</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_INTERFACE_DETERMINATION</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_INTERFACE_DETERMINATION</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_RECEIVER_MESSAGE_SPLIT</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_RECEIVER_MESSAGE_SPLIT</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_MAPPING_REQUEST</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.515</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_MAPPING_REQUEST</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.531</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_OUTBOUND_BINDING</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.531</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_OUTBOUND_BINDING</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.531</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="PLSRV">PLSRV_CALL_ADAPTER</SAP:Name>
      <SAP:Timestamp type="begin" host="lbsth-tb1ci">20071121155130.531</SAP:Timestamp>
      </SAP:RunTimeItem>
    - <SAP:RunTimeItem>
      <SAP:Name type="CORE">INTEGRATION_ENGINE</SAP:Name>
      <SAP:Timestamp type="end" host="lbsth-tb1ci">20071121155130.656</SAP:Timestamp>
      </SAP:RunTimeItem>
      </SAP:PerformanceHeader>
    - <SAP:Diagnostic xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:TraceLevel>Information</SAP:TraceLevel>
      <SAP:Logging>Off</SAP:Logging>
      </SAP:Diagnostic>
    - <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
      <Trace level="1" type="T">SystemError message generated. Guid: DC98499F7E4274F1A41F0017A4107EE6</Trace>
      <Trace level="1" type="T">Error during execution of message : DC98499CA1EABEF1B4DD00110A63BF06</Trace>
      <Trace level="1" type="T">ApplicationMessage was (=RefToMsgId): DC98499CA1EABEF1B4DD00110A63BF06</Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    - <!--  ************************************
      -->
      </SAP:Trace>
      </SOAP:Header>
    - <SOAP:Body>
      <SAP:Manifest xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7" />
      </SOAP:Body>
      </SOAP:Envelope>
    Regards,
    Kishore

    Hi,
    In the HTTP Receiver what is the Addressing Type used ? (URL Address or HTTP Destination).
    If its URL Addressing Type, check if right Authentication Type is used with valid values and for HTTP Addressing Type check this HTTP Client Create Error, it could be helpful.
    Also check if the Target system can be reached from the XI server to validate the configuration parameters.
    Regards,
    S.Santhosh Kumar

  • Error creating AIR file: could not generate timestamp

    I have been getting this error the last few days.
    Error creating AIR file: could not generate timestamp:
    sun.security.validator.BalidatorException:PKIX path building failed:
    sun.security.provider.certpath.SunCertPathBuilderException: unable to find
    valid certificatio path to requested target.
    https://timestamp.geotrust.com/tsa
    I found one thread saying this url must be accessible but when I go there I get "404 -- page not found".
    Since this was working now it is not I'm looking for a direction.

    Hey Karthik,
    First of all, are you using ECLIPSE? What is your development
    Environment. I had run into same issue, after hours of trying
    different things, I installed the FLEX BUILDER and was able to
    create the application without any issues. I have also noticed that
    FLEX BUILDER works more smoothly than Eclipse and since then I have
    been developing within FB.
    Thanks.

  • JAX-WS client - WebLogic - SSL with proxy server

    Good night!
    I'm having trouble communicating with webservices using certificate authentication (weblogic.wsee.jaxws.sslclient.PersistentSSLInfo) through and going through a proxy server (weblogic.wsee.jaxws.proxy.ClientProxyFeature) .
    If communication with the webservice is done directly (no proxy server) everything happens perfectly, but to set the proxy server I get the exception "BAD_CERTIFICATE." it is as if the certificate was not attached in the request.
    The webservice client was generated by JDeveloper.
    Has anyone experienced this problem?
    Sorry for my bad english
    Exception
    javax.xml.ws.WebServiceException: javax.net.ssl.SSLKeyException: FATAL Alert:BAD_CERTIFICATE - A corrupt or unuseable certificate was received.
         at com.sun.xml.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:218)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:204)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:124)
         at com.sun.xml.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:121)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:866)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:815)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:778)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:680)
         at com.sun.xml.ws.client.Stub.process(Stub.java:272)
         at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:153)
         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:136)
         at $Proxy30.cleCadastroLote(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.ClientInstanceInvocationHandler.invoke(ClientInstanceInvocationHandler.java:84)
         at $Proxy31.cleCadastroLote(Unknown Source)
         at br.com.tbl.ws.CleCadastroPortClient.main(CleCadastroPortClient.java:51)
    Webservice client with proxy server (error)
    import weblogic.wsee.jaxws.sslclient.PersistentSSLInfo;
    import javax.xml.ws.BindingProvider;
    import weblogic.wsee.jaxws.JAXWSProperties;
    import weblogic.wsee.jaxws.proxy.ClientProxyFeature;
    import weblogic.wsee.jaxws.sslclient.SSLClientUtil;
    public class CleCadastroPortClient
    public static void main(String [] args)
    try{
    CleCadastro_Service cleCadastro_Service = new CleCadastro_Service();
    CleCadastro cleCadastro = cleCadastro_Service.getCleCadastroPort();
    String clientKeyStore = "C:\\certificados.jks";
    String clientKeyStorePasswd = "xxxxx";
    String clientKeyAlias = "xxxxx";
    String clientKeyPass = "xxxxx";
    String trustKeystore = "C:\\keystore_completo.jks";
    String trustKeystorePasswd = "xxxxx";
    PersistentSSLInfo sslInfo = new PersistentSSLInfo();
    sslInfo.setKeystore(clientKeyStore);
    sslInfo.setKeystorePassword(clientKeyStorePasswd);
    sslInfo.setKeyAlias(clientKeyAlias);
    sslInfo.setKeyPassword(clientKeyPass);
    sslInfo.setTrustKeystore(trustKeystore);
    sslInfo.setTrustKeystorePassword(trustKeystorePasswd);
    ClientProxyFeature clientProxy = new ClientProxyFeature();
    clientProxy.setProxyHost("proxy.com");
    clientProxy.setProxyPort(Integer.parseInt("3128") );
    clientProxy.setProxyUserName("user");
    clientProxy.setProxyPassword("pass");
    clientProxy.attachsPort(cleCadastro);
    ((BindingProvider) cleCadastro).getRequestContext().put(JAXWSProperties.CLIENT_PERSISTENT_SSL_INFO, sslInfo);
    ((BindingProvider) cleCadastro).getRequestContext().put(JAXWSProperties.SSL_SOCKET_FACTORY, SSLClientUtil.getSSLSocketFactory(sslInfo));
    ((BindingProvider) cleCadastro).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "https:/xxxx/ws");
    String retorno = cleCadastro.cleCadastroLote("xml", "xml");
    }catch(Exception ex){
    ex.printStackTrace();
    Webservice client without proxy server (OK)
    import weblogic.wsee.jaxws.sslclient.PersistentSSLInfo;
    import javax.xml.ws.BindingProvider;
    import weblogic.wsee.jaxws.JAXWSProperties;
    import weblogic.wsee.jaxws.proxy.ClientProxyFeature;
    import weblogic.wsee.jaxws.sslclient.SSLClientUtil;
    public class CleCadastroPortClient
    public static void main(String [] args)
    try{
    CleCadastro_Service cleCadastro_Service = new CleCadastro_Service();
    CleCadastro cleCadastro = cleCadastro_Service.getCleCadastroPort();
    String clientKeyStore = "C:\\certificados.jks";
    String clientKeyStorePasswd = "xxxxx";
    String clientKeyAlias = "xxxxx";
    String clientKeyPass = "xxxxx";
    String trustKeystore = "C:\\keystore_completo.jks";
    String trustKeystorePasswd = "xxxxx";
    PersistentSSLInfo sslInfo = new PersistentSSLInfo();
    sslInfo.setKeystore(clientKeyStore);
    sslInfo.setKeystorePassword(clientKeyStorePasswd);
    sslInfo.setKeyAlias(clientKeyAlias);
    sslInfo.setKeyPassword(clientKeyPass);
    sslInfo.setTrustKeystore(trustKeystore);
    sslInfo.setTrustKeystorePassword(trustKeystorePasswd);
    ((BindingProvider) cleCadastro).getRequestContext().put(JAXWSProperties.CLIENT_PERSISTENT_SSL_INFO, sslInfo);
    ((BindingProvider) cleCadastro).getRequestContext().put(JAXWSProperties.SSL_SOCKET_FACTORY, SSLClientUtil.getSSLSocketFactory(sslInfo));
    ((BindingProvider) cleCadastro).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "https:/xxxx/ws");
    String retorno = cleCadastro.cleCadastroLote("xml", "xml");
    }catch(Exception ex){
    ex.printStackTrace();
    }

    Hi,
    I tried to use the option "-DUseSunHttpHandler=true" and enabled "JSSE SSL", but it did not work, now showing the exception "General SSLEngine problem".
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <javax.xml.ws.WebServiceException: javax.net.ssl.SSLHandshakeException: General SSLEngine problem>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.transport.http.client.HttpClientTransport.readResponseCodeAndMessage(HttpClientTransport.java:218)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:204)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:124)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:866)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:121)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:815)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:778)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:680)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at $Proxy308.cleCadastroLote(Unknown Source)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:136)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:115)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:153)>
    <05/09/2012 15h36min55s GMT-03:00> <Notice> <StdErr> <BEA-000000> <at com.sun.xml.ws.client.Stub.process(Stub.java:272)>

  • JAX-WS Client hangs thread

    Hello
    I have a web application which consumes a remote web service, it has been in live use for more than a year.
    The web service consumed is part of an off the shelf application which fails approx 6 times a year. When it fails, the GlassFish server hosting my web application is also liable to fail. Thus a failure of the purchased application results in the failure of a whole set of other applications.
    The Web Service client was written using JAX-WS. When the web service fails, calls to the client are liable to hang and never return. There is no timeout and no error, just a hung thread in GlassFish. In GlassFish the default maximum for request processing threads is 5, if all of them hang Glassfish is dead.
    jstack output shows JAX-WS gets stuck, it does a read without a timeout and never regains control. I have seen threads stuck for in excess of 1 hour 45 minutes, they remain stuck until the application server is re-started.
    To work around this issue I have written a class to predict if a connection is likely to be healthy or not, if not it attempts to replace the connection with a new one. I am reasonably confident this will reduce the likelihood of failures but I believe there must be a better way to avoid the overhead of getting a new connection every time.
    1) Has anybody else suffered this same issue, if so how did you get round it ?
    2) Does anybody agree with me that the reads done by JAX-WS should timeout if necessary and failure to do so is a weakness/bug in the JAX-WS client ?
    What follows is an example of jstack output showing a hung thread.
    ----------------- t@162 -----------------
    0xff2cc360     _read + 0x8
    0xfead8e18     JVM_Read + 0xe4
    0xfadbc154     Java_java_net_SocketInputStream_socketRead0 + 0x1fc
    0xf8c0c280     * java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) bci:-1830175952 (Interpreted frame)
    0xf8c0c224     * java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) bci:0 (Interpreted frame)
    0xf8c058b8     * java.net.SocketInputStream.read(byte[], int, int) bci:84 line:129 (Interpreted frame)
    0xf8c50588     <C2IAdapter>
    0xf949c8fc     0xf949c8fc     * java.io.BufferedInputStream.fill() bci:175 line:218 (Compiled frame)
    0xf8fbac24     0xf8fbac24     * java.io.BufferedInputStream.read1(byte[], int, int) bci:44 line:256 (Compiled frame)
    0xfa889c6c     0xfa889c6c     * sun.net.www.http.HttpClient.parseHTTPHeader(sun.net.www.MessageHeader, sun.net.ProgressSource, sun.net.www.protocol.http.HttpURLConnection) bci:51 line:681 (Compiled frame)
    0xf8cbfc44     <I2CAdapter>
    0xf8c057a8     * sun.net.www.http.HttpClient.parseHTTP(sun.net.www.MessageHeader, sun.net.ProgressSource, sun.net.www.protocol.http.HttpURLConnection) bci:30 line:626 (Interpreted frame)
    0xf8c057a8     * sun.net.www.protocol.http.HttpURLConnection.getInputStream() bci:246 line:983 (Interpreted frame)
    0xf8c05874     * java.net.HttpURLConnection.getResponseCode() bci:16 line:367 (Interpreted frame)
    0xf8c058b8     * com.sun.xml.ws.transport.http.client.HttpClientTransport.checkResponseCode() bci:5 line:201 (Interpreted frame)
    0xf8c05764     * com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(com.sun.xml.ws.api.message.Packet) bci:345 line:149 (Interpreted frame)
    0xf8c05d3c     * com.sun.xml.xwss.XWSSClientPipe.process(com.sun.xml.ws.api.message.Packet) bci:76 line:118 (Interpreted frame)
    0xf8c05d3c     * com.sun.xml.ws.api.pipe.helper.PipeAdapter.processRequest(com.sun.xml.ws.api.message.Packet) bci:6 line:115 (Interpreted frame)
    0xf8c52980     <C2IAdapter>
    0xfab36e58     0xfab36e58     * com.sun.xml.ws.api.pipe.Fiber.__doRun(com.sun.xml.ws.api.pipe.Tube) bci:206 line:595 (Compiled frame)
    0xf8c547bc     <I2CAdapter>
    0xf8c05874     * com.sun.xml.ws.api.pipe.Fiber._doRun(com.sun.xml.ws.api.pipe.Tube) bci:31 line:554 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.api.pipe.Fiber.doRun(com.sun.xml.ws.api.pipe.Tube) bci:84 line:539 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.api.pipe.Fiber.runSync(com.sun.xml.ws.api.pipe.Tube, com.sun.xml.ws.api.message.Packet) bci:48 line:436 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.client.Stub.process(com.sun.xml.ws.api.message.Packet, com.sun.xml.ws.client.RequestContext, com.sun.xml.ws.client.ResponseContextReceiver) bci:155 line:248 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.client.sei.SEIStub.doProcess(com.sun.xml.ws.api.message.Packet, com.sun.xml.ws.client.RequestContext, com.sun.xml.ws.client.ResponseContextReceiver) bci:4 line:135 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(java.lang.Object, java.lang.Object[], com.sun.xml.ws.client.RequestContext, com.sun.xml.ws.client.ResponseContextReceiver) bci:64 line:109 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(java.lang.Object, java.lang.Object[]) bci:14 line:89 (Interpreted frame)
    0xf8c05874     * com.sun.xml.ws.client.sei.SEIStub.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[]) bci:24 line:118 (Interpreted frame)
    0xf8c05d3c     * $Proxy64.updateProblem(com.peregrine.servicecenter.pws.pm.UpdateProblemRequest) bci:16 (Interpreted frame)
    0xf8c05d3c     * com.reuters.gsm.sf.consumePeregWs.PeregPm.addUpdate(java.lang.String, int, int, java.lang.String, java.lang.String, java.util.Date) bci:341 line:129 (Interpreted frame)
    Regards, Vince

    [http://stackoverflow.com/questions/2592303/how-do-i-set-the-jax-ws-client-request-timeout-programatically-on-jboss]

  • How to create a Java Client from a wsdl file...

    Hi,
    I am looking for an available option for calling a Cobol unit from a Java application( front end). I've used the MicroFocus tool for creating a wsdl file from our Cobol unit.. Now i want to use this wsdl file for creating a Java Client..
    Can any one suggest a suitable solution (software that makes use of the already existing wsdl file and generate a Java Client for that) ASAP....
    Thanks,
    roopa

    Hey you can create java client using Eclispe or WSAD or far that matter any other IDE. crate a project save the WSDLs in a package. Right click on WSDL goto webservice option. From there you can generate client.
    cheers,
    sapan
    Is it still open ?
    cheers,
    sapan
    Edited by: sapan on Feb 25, 2009 1:17 AM

Maybe you are looking for

  • No more start-up bong on power up/restart with Mac G4/350 AGP

    Hi, Recently, I noticed after I upgraded my RAM to 512MB, when I restart or start up the Mac, it no longer "bongs" anymore... Other than that, it boots into Mac OS just fine. Is something wrong?

  • Query on Service Order Reports

    Hi, Need to take report based on Months for the Open Service Orders Quantity Actual Cost Value of Open Service Orders (Local Currency) Actual Billable Cost Value of Open Service Orders (Local Currency) Month to Date Revenue Month to Date Margin Quant

  • When visiting gmail and sometimes facebook, on my mac, the page doesn't load fully and I get an empty old styled alert box that cannot be closed.

    It seems that when I visit gmail, occasionally, only the top part of the page loads and i get one of the old alert boxes. This alert box, however, doesn't have a message; it is blank. i can click 'ok' or 'cancel', but it does nothing. I have a few pl

  • Workflow for Grievance

    Hi I need to develop workflow for Grievances. For that we need to develop an application for interface (EP)from where the Grievances can be applied. Can anybody please suggest me are there any RFCs for Grievance (Info Type 102). And is there any stan

  • Synchronize regions in ECC and SRM

    Hi, We are using SRM 4.0 and ECC 5.0 as backend. When we create a vendor master in ECC and replicate it in backend we get an error for region not maintained in SRM. When we cross checked we identified 1500 entries missing as compared to R/3. Hence no