NPE when working with connections.xml for Web Service client

Our ADF Web Service clients needs to read the WSDL and End point URL from connections.xml. But this is giving an Error.
Here are the details:
jdevloper 11.1.1.6.0
Weblogic 10.3.5
OWSM 11.1.1.6
From my ADF based Application I need to call out a web service.
For this I have built a Web Service Proxy and coded to call it from the application.
Since the app needs to run through the development testing deployment lifecycle and hence be deployed on different environments, we need the ability allow configuration of wsdl and end point URL for the web service call without the need to recompile the app.
We want to leverage the connections.xml for this purpose.
http://docs.oracle.com/cd/E23943_01/web.1111/b31974/web_services.htm#autoId6
My connection.xml looks like:
   <Reference name="MyService" className="oracle.adf.model.connection.webservice.impl.WebServiceConnectionImpl" xmlns="">
      <Factory className="oracle.adf.model.connection.webservice.api.WebServiceConnectionFactory"/>
      <RefAddresses>
         <XmlRefAddr addrType="WebServiceConnection">
            <Contents>
               <wsconnection description="file:/C:/JDeveloper/mywork/jdev116/DeployTstCnnxtnLov/LovProxy/src/abc/lov/proxy/MyService.wsdl" service="{http://xmlns.oracle.com/Enterprise/HCM/services/MyService.1}MyService">
                  <model name="{http://xmlns.oracle.com/Enterprise/HCM/services/MyService.1}MyService" xmlns="http://oracle.com/ws/model">
                     <service name="{http://xmlns.oracle.com/Enterprise/HCM/services/MyService.1}MyService">
                        <port name="MyService_Port" binding="{http://xmlns.oracle.com/Enterprise/HCM/services/MyService.1}MyService_Binding">
                           <soap addressUrl="http://<machine:port>/PSIGW/PeopleSoftServiceListeningConnector" xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
                           <operation name="MyServiceOperation">
                              <soap soapAction="MyServiceOperation.v1" xmlns="http://schemas.xmlsoap.org/wsdl/soap/"/>
                              <output name="MyService_RESP.V1"/>
                              <input name="MyService_REQ.V1"/>
                           </operation>
                        </port>
                     </service>
                  </model>
               </wsconnection>
            </Contents>
         </XmlRefAddr>
      </RefAddresses>
   </Reference>
My code in the Service Client Looks like:
  @WebServiceRef
  private static MyService myservice;
            Context ctx = ADFContext.getCurrent().getConnectionsContext();
            WebServiceConnection wsc =
                (WebServiceConnection)ctx.lookup("MyService");
            String urlString = wsc.getWsdlUrlStr();
            System.out.println("WSDL URL: "+urlString);
            myservice = wsc.getJaxWSPort(MyService.class);
            MyService_PortType port = myservice.getMyService_Port();
  ServiceRequest request = new ServiceRequest();
  ServiceResponse response = port.MyServiceOeration(request);
The WSDL URL is being read correctly.
Error:
This error appears to be triggered by the code:
    myservice = wsc.getJaxWSPort(MyService.class);
java.lang.NullPointerException
        at java.lang.Class.isAssignableFrom(Native Method)
        at oracle.j2ee.ws.common.jaxws.runtime.GenericJavaType.create(GenericJavaType.java:97)
        at oracle.j2ee.ws.common.jaxws.runtime.GenericJavaType.create(GenericJavaType.java:118)
        at oracle.j2ee.ws.common.jaxws.runtime.OperationMappingModeler.processParameters(OperationMappingModeler.java:268)
        at oracle.j2ee.ws.common.jaxws.runtime.OperationMappingModeler.processMethod(OperationMappingModeler.java:155)
        at oracle.j2ee.ws.common.jaxws.runtime.ServiceEndpointRuntimeModeler.buildRuntimeModel(ServiceEndpointRuntimeModeler.java:114)
        at oracle.j2ee.ws.client.jaxws.WsClientProxyFactory.getRuntimeMetadata(WsClientProxyFactory.java:69)
        at oracle.j2ee.ws.client.jaxws.WsClientProxyFactory.createProxy(WsClientProxyFactory.java:126)
        at oracle.j2ee.ws.client.jaxws.WsClientProxyFactory.createProxy(WsClientProxyFactory.java:106)
        at oracle.j2ee.ws.common.jaxws.ServiceDelegateImpl.getPort(ServiceDelegateImpl.java:219)
        at oracle.j2ee.ws.common.jaxws.ServiceDelegateImpl.getPort(ServiceDelegateImpl.java:249)
        at oracle.adf.model.connection.webservice.impl.WebServiceConnectionImpl.getJaxWSPort(WebServiceConnectionImpl.java:385)
        at abc.lov.proxy.MyService_PortClient.fetchDesc(MyService_PortClient.java:84)
        at abc.lov.ServiceManager.fetchEmplID(ServiceManager.java:13)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

Hi Frank,
I got the following two lines of code just to check if WebServiceConnection was able to read the connections file alright.
            String urlString = wsc.getWsdlUrlStr();
            System.out.println("WSDL URL: "+urlString);
I am not using urlString for further processing.
The output is
WSDL URL: http://<host>/PSIGW/PeopleSoftServiceListeningConnector/MyService.1.wsdl
java.lang.NullPointerException
        at java.lang.Class.isAssignableFrom(Native Method)
        at oracle.j2ee.ws.common.jaxws.runtime.GenericJavaType.create(GenericJavaType.java:97)
        at oracle.j2ee.ws.common.jaxws.runtime.GenericJavaType.create(GenericJavaType.java:118)
The WSDL Url pointed to is the one that I configure in the connection while deploying the App.
Ran a test and WSDL Url is accessible by the app.

Similar Messages

  • WLDL files exported from XI 2.0 not valid for Web Service Clients

    Hi there,
    Im struggling for almost a week with a <b>BAPI WSDL file</b> exported from the XI repository. My scenario is very simple; A BAPI in R/3 exposed as web service through XI using the SOAP adapter.
    The intention was to generate a Web Service Client based on this WSDL file, unfortunately I get all kind of errors when trying to generate the client. (using tools like, SOAPScope, XML Spy and WebSphere Developer Studio none of this tools can validate the generated WSDL file obtained from XI)
    Can someone <b>Please explain</b> me how/what exaclty do I have to do in order to expose my BAPI as Web Service in XI 2.0? Or Please tell me if this is just impossible in this version of XI.
    Thanks a lot!
    Rob.

    Hi Rob,
    It seems that when exporting to a WSDL file from the Repository, <service> and <binding> are missing from the structure.
    A way to work this out is to either add them maually, or to create the WSDL from the Directory, using the Create End Point as Webservice in the Tools menu.
    When you do that, consider a couple of things:
    1. The message interface, by which you create the wsdl should be inbound. The message interface in the scenario should be outbound.
    2. In the binding section, the produced url is of the intergration server, and you need to change it to that defined in the SOAP adapter configuration.
    Hope this helps.
    Avihai

  • HTTP Analyzer help for web service client in 11g

    I am using jDev 11.1.1.3.0 to build a web service client (proxy) to a potential vendor's web service. I've used the Http Analyzer before but I'm having trouble configuring it for a WS proxy. I just want to see the SOAP stream between my client and the web service. I used the Web Service Proxy wizard to create the Java code, but the web service provider has kept some of the contract in the WSDL private so that I had to manually generate the meat and potatoes of the Java code. I need to be able to see the SOAP my Java code is sending.
    I have tried to configure the Http Analyzer to listen on it's own localhost and port with a forward rule to forward the request to the real WS, but I cannot figure out how to get the client to send it's requests to localhost instead of the actual WS.
    Actually, I did figure it out, but then the request fails as it apparently tries to connect to the real WSDL before actually sending the request and cannot find a WSDL at the localhost URL. Here's the error:
    Exception in thread "main" javax.xml.ws.WebServiceException: {http://localhost:8099}CatalogRequest is not a valid service. Valid services are: {http://[actual URL here]}CatalogRequest
         at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:249)
    I have also tried to configure the Http Analyzer to somehow 'sniff' the actual URL by listening on the actual URL and port, but either I cannot get the Analyzer to see the request or it fails because the Analyzer is using the same port the request is trying to use.
    Can someone explain how to configure the Http Analyzer to see the SOAP stream for a Web Client Proxy?

    Hi, I'm just using the default setup for HTTP Analyzer and having no problem using it.
    Just make sure to run the HTTP Analyzer first before running or starting your app server (Integrated weblogic Server).

  • Dynamic Logical Port for Web Service Client

    Hi *!
    We want to use the same Web Service Client code with different Web Service instances running on different systems. So I need to configure the logical port (especially the URL of the endpoint) dynamically at runtime.
    Please give me a hint, how this is done.
    (we are using WebAS 6.40 SP7)...
    Thanks in advance,
         Frank

    Hi Frank,
    I hope you were able to solve your issue on you own in the meantime.
    I was looking for the answer to this question today. This was the only thread I found on SDN. Unfortunately, it did not contain an answer yet. I was able to figure out a way to set the endpoint address dynamically after searching help.sap.com and after examining the interfaces offered by the Stub (logical port in this case) classes.
    Here's an extract from my code:
    // Connect to JNDI context
    InitialContext ic = new InitialContext();
    // Get reference to web service proxy from JNDI context
    Z_MSC_GET_SCHEDULE_WSDService service =
         (Z_MSC_GET_SCHEDULE_WSDService) ic.lookup("wsclients/proxies/iot-online.de/msc~srv_ejb~proxy/de.iot_online.msc.proxy.ScheduleReaderProxy");
    // Get reference to logical port from web service proxy
    Z_MSC_GET_SCHEDULE_WSD logicalPort = service.getLogicalPort();
    // Set URL of web service Endpoint
    logicalPort._setProperty(Stub.ENDPOINT_ADDRESS_PROPERTY, "http://<FQDN>:8010/sap/bc/srt/rfc/sap/Z_MSC_GET_SCHEDULE_WSD?sap-client=100");
    This is explained on
    http://help.sap.com/saphelp_nwce10/helpdata/en/45/113a1221337249e10000000a155369/frameset.htm
    You can also set the credentials (username / password) with the method _setProperty.
    Best regards
    Christian

  • Driving me nuts: Working with sRGB images for web

    Good day ladies and gentlemen, I have a problem that's driving me nuts:
    Basically, I want to create a graphic (a logotype) that is going to be used on a website, so I've learned that if I want to create anything for the web, I have to use the monitor color profile instead of the standard sRGB 2.1 because otherwise everything I make in PS will look completely different when opened in a browser or anywhere else, which I learned the hard way.
    Now, as long as I only create original content with that kind of color settings - it works. The stuff I make in PS looks the same in a browser. However, as soon as I want to use a photo or in this case a separate graphic with the sRGB color profile - everything starts to fall apart. Everything sRGB I try to import into my non-profiled work turns bleak and with a yellowish tint.
    If I change my working color profile to sRGB the photos look like they should, but then instead all my original content will still look completely wrong in a browser or any other application.
    I don't believe it HAS to be this way, since there are so many websites that seem to be able to look great and have rich, good-looking photos in them at the same time. I mean, there must be a solution to this problem, no?
    I'm using a MacBook Pro (Late 2008) with the 9400M/9600M GT and a Benq EW2430 external monitor over DVI. Mac OS X 10.6.8 Snow Leopard. Photoshop CS5 with the latest update (12.0.4 I believe?)
    Big thanks for any help. It would be greatly appriciated. Let me know if posting any screenshots would help solve the problem.

    try this (if you want to)
    first highlight the OEM default monitor profile for your monitor in Displays> Color> Display Profile
    reboot (and confirm the profile is still highlighted there)
    then drag this PhotoDisc tagged sRGB image to your desktop and open it in Photoshop
    USE THE EMBEDDED PROFILE (or Edit> Assign Profile: sRGB to be sure)
    at that point the color should look correct (exactly as it looks in Safari here - if it doesn't look exactly correct here in Safari, it is because you have a bad monitor profile)
    then in Photoshop: Image> Duplicate (to see two same files side by side for a comparison)
    then on one image: Edit> Assign Profile (the monitor profile you have loaded in Displays)
    be sure to set the profile in the bottom left (see below) so it displays (so we can see them in your screen shot)
    THEN TAKE A SCREEN SHOT of the two windows side by side and post it here
    (Command+Shift+4 and drag the area you want captured)
    If I understand your advice right, you suggest that when I'm creating
    stuff for the web, I should always, always use sRGB as my working
    space? But then on export I should just not embed the profile, correct?
    sRGB is the only color you should ever post on the Internet for web viewing
    always CONVERT to sRGB before saving for the web (if it is not already in the sRGB color space) ie, leave that option checked in Save For Web Devices
    i think most people don't embed the profile in web images, but this was hit on succinctly above post 13:
    There is no true color management on the web. As different browsers offer different types of CM support, the
    best that you can do as a designer is to convert to sRGB (if not
    already) and save color-critical images with the embedded sRGB profile.
    That's the general rule.

  • How and when to load cross-domain.xml for web services.

    I'm accessing some 3rd party web services and so I need them to have a cross-domain.xml file, which they have done.
    In order to access their web services, am I correct that I need to load the cross-domain.xml file they put on their web server, and if so, is my code to do so below correct, which I put in my creationComplete handler function?
    Note, of course the IP address in my code is not 0.0.0.0.
    Do I need all these lines, and am I doing this correctly?
    Currently I am getting a SecurityErrorEvent.
    Security.allowDomain("0.0.0.0");
    Security.loadPolicyFile("http://0.0.0.0/crossdomain.xml");
    var request:URLRequest = new URLRequest("http://0.0.0.0/crossdomain.xml");
    var loader:URLLoader = new URLLoader();
    loader.addEventListener(Event.COMPLETE, policyLoaded);
    loader.addEventListener(IOErrorEvent.IO_ERROR, policyIOError);
    loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, policySecurityError);
    loader.load(request);

    Okay, I found that when I put the crossdomain.xml file at the root of my web site file area my hosting company provides, I do not specifically need to load the crossdomain.xml file.
    But if I want finer control over who has access to what, and I put the crossdomain.xml file in the same directory as my Flex app SWF file, what lines of the following code (or additional lines I don't know about) should I put in my app creationComplete handler function to load the crossdomain.xml file?
    Note, of course the IP address in my code is not 0.0.0.0.
    Do I need all these lines, and am I doing this correctly?
    Security.allowDomain("0.0.0.0");
    Security.loadPolicyFile("http://0.0.0.0/myAppFolder/crossdomain.xml");
    var request:URLRequest = new URLRequest("http://0.0.0.0/myAppFolder/crossdomain.xml");
    var loader:URLLoader = new URLLoader();
    loader.addEventListener(Event.COMPLETE, policyLoaded);
    loader.addEventListener(IOErrorEvent.IO_ERROR, policyIOError);
    loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, policySecurityError);
    loader.load(request);

  • Modifying properties with a file for Web Service Stub used for Oracle Forms

    I have created a stubbed-out web service in JDeveloper (10.1.3.4) and imported into Oracle Forms.
    However, I would like to use a properties file to call the appropriate endpoint based on if the environment is dev, test, UAT or prod. I see that a properties file is referenced in the _Stub class. Here is a snippet of code from that class file:
    public CriticalChangeWS_Soap11_Stub(HandlerChain handlerChain) {
    super(handlerChain);
    setProperty(ENDPOINTADDRESS_PROPERTY, "http://epw-01.gds.graebel.com:8087/CriticalChange.svc/Soap11");
    setSoapVersion(SOAPVersion.SOAP_11);
    setServiceName( new QName("http://tempuri.org/","CriticalChangeService"));
    setPortName( new QName("http://tempuri.org/","CriticalChangeWS_Soap11"));
    setupConfig("wsquery/proxy/runtime/CriticalChangeWS_Soap11_Stub.xml");
    How can I use the XML file to set the ENDPOINT_ADDRESS_PROPERTY?
    Thanks.
    Jim O

    Hi Frank,
    I got the following two lines of code just to check if WebServiceConnection was able to read the connections file alright.
                String urlString = wsc.getWsdlUrlStr();
                System.out.println("WSDL URL: "+urlString);
    I am not using urlString for further processing.
    The output is
    WSDL URL: http://<host>/PSIGW/PeopleSoftServiceListeningConnector/MyService.1.wsdl
    java.lang.NullPointerException
            at java.lang.Class.isAssignableFrom(Native Method)
            at oracle.j2ee.ws.common.jaxws.runtime.GenericJavaType.create(GenericJavaType.java:97)
            at oracle.j2ee.ws.common.jaxws.runtime.GenericJavaType.create(GenericJavaType.java:118)
    The WSDL Url pointed to is the one that I configure in the connection while deploying the App.
    Ran a test and WSDL Url is accessible by the app.

  • Bypass Adapter URI Endpoint with Escape Character for Web Service

    Dear All,
    I would like to apply by pass adapter URI Endpoint for XI webservice, the default format is
    http://<host>:<port>/sap/xi/engine?type=entry&version=3.0&Sender.Service=<BusinessService>&Interface=<namespace>^<Outbound Interface name>
    If I am using format using with carat () character then there has no problem to the service, but consumer doesn't support carat () character. I instead the carat (^) with URL Escape Character (%5E)
    http://<host>:<port>/sap/xi/engine?type=entry&version=3.0&Sender.Service=<BusinessService>&Interface=<namespace>%5E<Outbound Interface name>
    Then error occurred
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
       <SOAP:Body>
          <SOAP:Fault>
             <faultcode>SOAP:Server</faultcode>
             <faultstring>System Error</faultstring>
             <detail>
                <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                   <context/>
                   <code>RCVR_DETERMINATION.MESSAGE_INCOMPLETE</code>
                   <text>Message is incomplete. No Sender found</text>
                </s:SystemError>
             </detail>
          </SOAP:Fault>
       </SOAP:Body>
    </SOAP:Envelope>
    How to resolve this error...
    Thank you.
    Regards,
    Weng

    Hi ,
    as per my knowledge.....................
    When you create a WSDL with the help of a wizard. In the Integration Directory, choose Tools -> Define Web Service to enter the wizard.
    On Propose URL button, as this genertated URL default Point to Entegration Engine.. SO already proformance wise Good.
    If You want to Point your URL to adapter engine , use below given URL this will point ur incoming soap  message to SOAPadapter sender channel
    http://<host>:<j2ee-port>/XISOAPAdapter/MessageServlet?channel=:<service>:<channel>.
    Regards
    Prabhat Sharma.

  • Error message when trying to connect to a web service

    Hi all,
    I am trying to consume a third party web service using the
    attached code and i get this big massive error about complex types:
    [The following information is meant for the website developer
    for debugging purposes.
    Error Occurred While Processing Request
    Complex object types cannot be converted to simple values.
    The expression has requested a variable or an intermediate
    expression result as a simple value, however, the result cannot be
    converted to a simple value. Simple values are strings, numbers,
    boolean values, and date/time values. Queries, arrays, and COM
    objects are examples of complex values.
    The most likely cause of the error is that you are trying to
    use a complex value as a simple one. For example, you might be
    trying to use a query variable in a <CFIF> tag. This was
    possible in ColdFusion 2.0 but creates an error in later versions.
    Has anyone encountered this before or what this may
    mean....thanks
    Code:

    What kind of data is returned by your callcredit webservice?
    Try performing a cfdump on "io".
    Also, the cfinvoke/webservice method usually generates the
    SOAP wrapper around your webservice arguments. You may want to try
    just passing the XML expected by Job5314 (unless, of course, the
    method is expecting a full SOAP message as a parameter).
    i.e.
    <cfsavecontent variable="strpost2">
    <pwdchangerequest>
    <oldpwd>oldpassword</oldpwd>
    <newpwd>newpass</newpwd>
    <confirmpwd>newpass</confirmpwd>
    </pwdchangerequest>
    </cfsavecontent>
    <cfinvoke
    webservice="
    http://localhost/callcredit.wsdl"
    method="Job5314"
    returnvariable="io">
    <cfinvokeargument name="io" value="#strpost2#"/>
    </cfinvoke>
    <cfdump var="#io#">

  • Enhance BOL with Z-fields for Web Service

    Hello,
    I need to create Web Service for quotation.
    I want to add some Z-fields to this WS. I think I need to enhance BTAdminH BOL.
    I already append structure with Z-fields to BTAdminH BOL, however I don't know where I should write ABAP code for filling those fields.
    How can I find class for BTAdminH BOL, and how can I convert it to Z-class?
    Is it risky to do in already alive system?
    Best Regards,
    Veronica

    Hello Robert,
    I have already read this blog and my colleague tried to do the same, however we can't transfer it to QA system because the development is in local package (as it is described in the blog).
    Do you know how to transfer it to QA system?
    Failure to transfer to QA leads us to search other solution like enhance BOL.
    Veronica

  • Using Eclipse Ant tasks - for web service client creation

    Hi,
    I am following Eclipse documentation for creating Axis runtime environment web services and clients using web services Ant tasks.
    As per document when I import Ant files into workspace, files that will be imported are wsgen.xml (Ant file) , axisservice.properties and axisclient.properties but for me these files are not getting imported into the project instead files axis_bujava.properties and axis_bujava.xml are imported.
    Please do let me know if anyone have any ideas on this asap.
    Thanks,
    Roopa.

    Hi,
    I am following Eclipse documentation for creating Axis runtime environment web services and clients using web services Ant tasks.
    As per document when I import Ant files into workspace, files that will be imported are wsgen.xml (Ant file) , axisservice.properties and axisclient.properties but for me these files are not getting imported into the project instead files axis_bujava.properties and axis_bujava.xml are imported.
    Please do let me know if anyone have any ideas on this asap.
    Thanks,
    Roopa.

  • IndexOutOfBoundsException When Creating Web Service Client

    Hello,
    I am getting the following error when I try to create a Web Service Client in JDeveloper 10.1.3. Any ideas why this occurs?
    Thanks,
    Kevin Scott
    java.lang.IndexOutOfBoundsException: Index: 0, Size: 0     
         at java.util.ArrayList.RangeCheck(ArrayList.java:507)     
         at java.util.ArrayList.get(ArrayList.java:324)     
         at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.updateNavigatorImpl(ProxyGenerator.java:574)
         at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.access$1000071(ProxyGenerator.java:71)
         at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator$2.run(ProxyGenerator.java:525)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:171)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:141)
         at java.awt.Dialog$1.run(Dialog.java:540)
         at java.awt.Dialog.show(Dialog.java:561)
         at java.awt.Component.show(Component.java:1133)
         at java.awt.Component.setVisible(Component.java:1088)
         at oracle.bali.ewt.dialog.JEWTDialog.runDialog(Unknown Source)
         at oracle.ide.dialogs.ProgressBar.start(ProgressBar.java:275)
         at oracle.jdeveloper.webservices.model.GeneratorUI.start(GeneratorUI.java:189)
         at oracle.jdeveloper.webservices.model.proxy.ProxyGenerator.generate(ProxyGenerator.java:195)
         at oracle.jdeveloper.webservices.model.proxy.WebServiceProxy.saveEdit(WebServiceProxy.java:1066)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.ProxyWizard.runWizard(ProxyWizard.java:263)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.ProxyGalleryWizard.invoke(ProxyGalleryWizard.java:84)
         at oracle.ide.WizardManager.invokeWizard(WizardManager.java:488)
         at oracle.ide.WizardManager$1.run(WizardManager.java:542)
         at oracle.ide.util.IdeUtil.invokeAfterRepaint(IdeUtil.java:1143)
         at oracle.ide.WizardManager$2.run(WizardManager.java:550)
         at oracle.ide.util.IdeUtil$4.run(IdeUtil.java:1123)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

    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

  • Web Service Client, BindException, Address already in use, saaj.SOAPExcepti

    Hello,
    Am caught up with an error and i can't get past it, need some help here.
    My application is a batch processing web service client, reads some input rows, sends web service requets, processes the responses and logs it.
    The application runs well in normal mode, but under load(more thread count), I get this wierd error and I can't make it go away.
    java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
    Caused by: java.net.BindException: Address already in use: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    I have properly closed the connections after each web service calls, but it still says Address in use. Please refer below for the complete stack trace and a piece of the code. Am using SAAJ and JWSDP and am not using AXIS api. I have searched the web but couldn't find any solutions.
    This is not an error that server is not closing connections properly as I was able to test with SOAPUI and LoadRunner with even higher threads and it ran without problems. SOAPUI and LoadRunner scripts were executed from the same client machine as my application uses. Please help.
    For each inputrow
    SOAPConnection connection = null;
    try
    SOAPConnectionFactory soapConnFactory = SOAPConnectionFactory.newInstance();
    connection = soapConnFactory.createConnection();
    SOAPMessage request = getRequest(inputRow);
    SOAPMessage response = connection.call(request, "http://<<server>>:<<port no>>/Domain/Services/Mgmt");
    finally
    if (connection != null)
    connection.close();                         
    }catch(SOAPException se){
    System.out.println("Error while closing connection. " + se.getMessage());
    connection = null;
    } // End of for loop
    Stack Trace:
    java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptio
    nImpl: Message send failed
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.call(HttpSOA
    PConnection.java:121)
    at ClientImpl.getResponse(ClientImpl.java:440)
    at input.InputSampler$MyCallable.call(Sampler.java:63)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Caused by: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed
    at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOA
    PConnection.java:325)
    at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection$PriviledgedP
    ost.run(HttpSOAPConnection.java:150)
    ... 12 more
    Caused by: java.net.BindException: Address already in use: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at sun.net.NetworkClient.doConnect(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.openServer(Unknown Source)
    at sun.net.www.http.HttpClient.<init>(Unknown Source)
    at sun.net.www.http.HttpClient.New(Unknown Source)
    at sun.net.www.http.HttpClient.New(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown
    Source)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Sour
    ce)
    at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown S
    ource)
    at com.sun.xml.messaging.saaj.client.p2p.HttpSOAPConnection.post(HttpSOA
    PConnection.java:282)
    Is there something like connection pooling for web services, is that the answer to this issue, if yes, please let me know where i should start.
    Thanks
    Dev

    Move server socket creation out of while loop. You don't need to create new server socket every time.

  • Studio Creator and Web Service Clients

    Can somebody please explain to me or point me to some actual documentation on how this junk works?
    I have a web service client that was generated from a wsdl file being used by my studio creator project... the web service has changed and now i need to update/replace the client with a new one. It seems like no matter what I do it wants to tag a '3' onto the end of the name of the web service port and also build it into the package names - requirign me to go to all the places in my code that use this client and fix it to have a stupid 3 in it....
    Just replacing web service clients appears to be a huge ordeal involving removing the client libraries from the library folder, and even going into the build-impl.xml to remove references to the old client jars...
    I can't find any options to specify the web service client jar which would allow me to just overwrite the old ones instead of creating these new ones with archaic numbers (e.g. 1384793814) on the end of them...
    Is there an easy way to wipe clean or update a web service from an entire project without leaving these ridiculous references everywhere? When I try to replace the name personService3 with personService in the web service client generator tool it tells me the name is already in use but I can't for the life of me find it...
    can somebody shed some light on this for me? please help before i yank all my hair out...
    Thanks....
    Message was edited by:
    kregan77

    Please see the article I wrote called, "Web Service Consumption Security" at http://devservices.sun.com/premium/jscreator/standard/reference/tips/ws_consumption_security.html
    This will give you an idea of what is supported for the current version of Creator. Also, if you want some other feature supported, please submit a detailed use case to this forum.
    Thanks!
    -David

  • Problems - WLS 10.0 web service client

    I'm having a few issues with WLS 10.0 web service client.
              I generated a service control from the WSDL. The service is provided by a 3rd party (non-WLS) at another company. I generated the control within my web project and it's deployed as part of the web application. I experience the following problems with the service control API:
              1) The methods setKeyStore(), setTrustStore(), setClientCert() all seem to be ignored - the server always uses the values set in the server's environment definition. Note - the setEndpointAddress() seems to work.
              2) The client request does not set the 'Content-Type' HTTP header correctly (it's set to text/html) - I have no way to override this via the service control API (that I can see).
              3) I don't see any way/place to turn on more detailed tracing of what's going on internally with the service control invocation - is there a way to enable a detailed trace log of what is happening within the service control?
              Note: I'm able to call the web service via the test client (after importing the 3rd party server cert into my local cacerts).
              Thanks,
              [email protected]

    Thank you for the reply..
    But im still geting the same error. I have tried to include all the libraries in JWSDP pack but still.. I have managed to narrow down the place where the error occures.. It actually happens when I try to get the WebService Client Servant which is located in the package LSC:
    ---> LSC.LWServiceGenClient.LWS_Impl service = new LSC.LWServiceGenClient.LWS_Impl();
    LSC.LWServiceGenClient.LWSServantInterface lagerServiceServant = LSC.LWServiceGenClient.LWSServantInterface_Stub)service.getLWSServantInterfacePort();
    return lagerServiceServant;
    Could something be wrong with the way I package the Jar? I'm using Sun One Studio and have tried including the 5 packages the application consists of; I have tried including just the files; moving the main class to <root>.. Still same problem..
    Or could there be some different fundemental thingy I have forgotten ??
    thanks
    Aqoi

Maybe you are looking for