SOAP web service: null parameter if namespace not declared in envelope

Hi guys,
We are exposing a SOAP web service on WebLogic Portal 10.0. The service has one method which takes a single parameter. The service works correctly if the namespace is declared in the envelope element, but it is unable to map the request correctly if the namespace is declared on each request element and so the single parameter is null.
This works:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:inv="http://company.com/inventory">
   <soapenv:Header/>
   <soapenv:Body>
      <inv:CheckProductReservation>
         <username>6144</username>
         <udac>GP1</udac>
         <directoryYpgCode>00903</directoryYpgCode>
         <headingCode>0000001005</headingCode>
         <validityStartDate>2009-09-01</validityStartDate>
         <validityEndDate>2010-08-31</validityEndDate>
         <reservationCode>1234</reservationCode>
      </inv:CheckProductReservation>
   </soapenv:Body>
</soapenv:Envelope>This fails:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <SOAP-ENV:Body>
      <CheckProductReservation xmlns="http://company.com/inventory">
         <username xmlns="http://company.com/inventory">6144</username>
         <udac xmlns="http://company.com/inventory">GP1</udac>
         <directorycompanyCode xmlns="http://company.com/inventory">00903</directorycompanyCode>
         <headingCode xmlns="http://company.com/inventory">0000001005</headingCode>
         <validityStartDate xmlns="http://company.com/inventory">2009-09-01</validityStartDate>
         <validityEndDate xmlns="http://company.com/inventory">2010-08-31</validityEndDate>
         <reservationCode xmlns="http://company.com/inventory">1234</reservationCode>
      </CheckProductReservation>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>These two requests seem equivalent and syntactically correct. Interestingly enough, soapUI seems to think that the 2nd request is not valid.
Any ideas why the 2nd request is not working?
Thanks!

The WSDL doesn't define the elementNameQualified attribute anywhere. The WSDL looks like this:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:im="http://company.com/inventory" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
     xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="InventoryService"
     targetNamespace="http://company.com/inventory">
     <wsdl:types>
          <xsd:schema targetNamespace="http://company.com/inventory">
               <xsd:element name="CheckProductReservation">
                    <xsd:complexType>
                         <xsd:sequence>
                              <xsd:element name="username" type="xsd:string" maxOccurs="1" minOccurs="1" />
                              <xsd:element name="udac" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element>
                              <xsd:element name="directorycompanyCode" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element>
                              <xsd:element name="headingCode" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element>
                              <xsd:element name="validityStartDate" type="xsd:date" maxOccurs="1" minOccurs="1"></xsd:element>
                              <xsd:element name="validityEndDate" type="xsd:date" maxOccurs="1" minOccurs="1"></xsd:element>
                              <xsd:element name="reservationCode" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element>
                         </xsd:sequence>
                    </xsd:complexType>
               </xsd:element>
               <xsd:element name="CheckProductReservationResponse">
                    <xsd:complexType>
                         <xsd:sequence>
                              <xsd:element name="resultCode" type="im:checkProductReservationResultCode" maxOccurs="1"
                                   minOccurs="1">
                              </xsd:element>
                              <xsd:element name="message" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element>
                         </xsd:sequence>
                    </xsd:complexType>
               </xsd:element>
               <xsd:simpleType name="checkProductReservationResultCode">
                    <xsd:restriction base="xsd:int">
                         <xsd:enumeration value="0" />
                         <xsd:enumeration value="1" />
                         <xsd:enumeration value="2" />
                         <xsd:enumeration value="3" />
                         <xsd:enumeration value="99" />
                    </xsd:restriction>
               </xsd:simpleType>
          </xsd:schema>
     </wsdl:types>
     <wsdl:message name="CheckProductReservationRequest">
          <wsdl:part name="parameters" element="im:CheckProductReservation"></wsdl:part>
     </wsdl:message>
     <wsdl:message name="CheckProductReservationResponse">
          <wsdl:part name="parameters" element="im:CheckProductReservationResponse"></wsdl:part>
     </wsdl:message>
     <wsdl:portType name="InventoryService">
          <wsdl:operation name="CheckProductReservation">
               <wsdl:input message="im:CheckProductReservationRequest"></wsdl:input>
               <wsdl:output message="im:CheckProductReservationResponse"></wsdl:output>
          </wsdl:operation>
     </wsdl:portType>
     <wsdl:binding name="InventoryServiceSOAP" type="im:InventoryService">
          <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
          <wsdl:operation name="CheckProductReservation">
               <soap:operation soapAction="http://company.com/inventory/VerifyProductReservationCode" />
               <wsdl:input>
                    <soap:body use="literal" />
               </wsdl:input>
               <wsdl:output>
                    <soap:body use="literal" />
               </wsdl:output>
          </wsdl:operation>
     </wsdl:binding>
     <wsdl:service name="InventoryService">
          <wsdl:port binding="im:InventoryServiceSOAP" name="InventoryServiceSOAP">
               <soap:address location="http://www.company.com/" />
          </wsdl:port>
     </wsdl:service>
</wsdl:definitions>What does that tell us?

Similar Messages

  • SOAP web service: query parameter?

    Hi guys,
    I'm a newbie when it comes to web services and I've hit a problem that I didn't expect. I've exposed several SOAP services using the JAX-WS and WebLogic which are working fine. I've tried implementing an access key security mechanism such as Amazon does by adding a filter in front of the service's handling servlet to check for an access key sent as an HTTP query parameter. So basically, the service that was exposed at the following URL:
    http://localhost/company/service
    must now be accessed using the following URL:
    http://localhost/company/service?accessKey=123
    The filter checks the accessKey parameter and short-circuits the request if the wrong access key is sent.
    While this approach works well with JAX-RS web services, it doesn't seem to be working as well with JAX-WS web services: adding the parameter makes WebLogic return a 404 error instead of processing the request. I'm convinced I've seen web services being called with query parameters and that this can be done, but I don't see how. Any ideas anyone?
    Cheers!

    It seems that the servlet generated by Workshop doesn't handle extra parameters too well. I've managed to get it working by tweaking the filter so that it lets WSDL retrieval requests pass through but still filters the other requests. Everything is working fine.

  • Infopath 2013 SOAP Web Service Data Connection - Error: The file is not a valid XML file

    Here are the steps to replicate the issue I’m having when adding lists.asmx or any other SharePoint web service in InfoPath 2013. This web service opens fine in the browser from my desktop. My account is a farm administrator and is added to the
    web application’s User Policy.  I can use these services just fine using Nintex 2013 Workflow.
    Open InfoPath Designer 2013.
    Select Blank Form and click Design Form button.
    Click “Data” tab.
    Click “From Web Service” and select “From SOAP Web Service”
    Enter https://mysiteurl.com/_vti_bin/lists.asmx?WSDL for the web service definition.
    Click Next.
    Windows Security window pops up.
    Enter a credential. I tried both my account and the farm account. My account is a farm admin and is added to the web application’s User Policy with Full Control.
    Click OK. It prompts for credential multiple times.
    I get below this error messages: 
    Sorry, we couldn't open https://mysiteurl.com/_vti_bin/lists.asmx?WSDL
    InfoPath cannot find or cannot access the specified Web Service description.
    The file is not a valid XML file.
    Not enough storage is available to process this command.
    We have a project that is in need of these services using InfoPath so any help is greatly appreciated.

    Hi Brian_TX,
    For your issue, try to the following methods:
    Change your service binding in web.config to:binding="basicHttpBinding". It seems in VS it defaults to wsHttpBinding.
    Replace all instances of "parameters" from the web service wsdl with the name "parameter"
    There are some similar articles about the issue, you can have a look at them:
    http://www.infopathdev.com/forums/t/23239.aspx
    https://social.msdn.microsoft.com/Forums/office/en-US/621929c3-0335-40af-8332-5a0b430901ab/problems-with-infopath-web-service-connection?forum=sharepointcustomizationprevious
    https://social.msdn.microsoft.com/Forums/en-US/5fa5eca8-f8d7-4a2e-81ba-a3b4bdcfe5af/infopath-cannot-find-or-cannot-access-the-specified-web-service-description?forum=sharepointcustomizationlegacy
    Best Regards
    Lisa Chen
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]

  • Questions on using a SOAP web service's data in a Crystal Reports report

    I'm attempting to create a report using CR 2008, accessing data from a SOAP web service. I've run into a few problems, and need some advice.
    1) CR doesn't seem to support WSDL files that use relative URI imports (for example, I have a relatively complicated WSDL file that imports other WSDL files and schemas using relative URI locations). To solve this problem, I have downloaded all of the files to my local hard drive, and changed the "location" attributes to point to local files. Is there any other solution to this problem?
    2) CR doesn't seem to support circular references within schema files. To solve this problem, I have removed circular references from my local schema files. Of course, my actual web service will still potentially return data structures with these circular dependencies. Is there any other solution to this problem?
    3) CR doesn't seem to support request documents that allow for arrays of elements. For example, my schema allows the user to specify an array of Instruments that should be returned by the web service. In the meantime, I have changed the schema to only specify single instances of the Instrument element in the request. Is there any other solution to this problem?
    4) CR doesn't seem to support empty values for optional attributes that are specified in the schema. So, when the "Enter Values" parameter form appears, I am required to enter values for these attributes, even though they are listed as optional in the schema. To avoid this problem, I have commented out the optional attribute values in the schema. Is there any other solution to this problem?
    5) When the schema specifies that a value is based on a restricted simple (string) type, the CR parameter form shows a drop list with ellipses (...), but the drop list does not contain the enumerated types specified in my schema. Instead, I must manually enter a value. Do you know of any reason why the drop list is not populated?
    6) The SOAP response document from my web service is relatively complicated. So, in the "Data" page of the Standard Report Creation Wizard, each and every XML element level of the response document listed in the schema is shown as a separate entry. If I choose just the top level element ("fetchInstrumentSetResponse"), then very little data is shown on the next page of the wizard (only the ID attribute). But, if I select each and every element type from the response document, CR prompts me for the request document parameters for each row I have selected (I see the same form 30+ times), even though there really should only be a single SOAP request to the web service to return this response document. It seems to be treating each of these elements as a separate "database table", with a different query string for each. Am I using this feature incorrectly?
    If you can point me to somewhere in the documentation that handles this in more detail, that would be great (all I could find were the step-by-step instructions on how to connect to a web service as a data source).
    Thanks!

    Please re-post if this is still an issue or purchase a case and have a dedicated support engineer work with your directly

  • Help NeEDED. How to link to soap web service from objective c

    Hello , HELP
    I'm trying to connect to a SOAP based web service using objective C as my programming language. Although the little bit of information on the Apple Dev centre documents is should be straight forward, im struggling like **.
    What im trying to do is connect via a small username and password text-box plus 'login' button from interface builder to
    https://api.betfair.com/global/v3/BFGlobalService.wsdl and parameter called login.
    then pass it my username and password from the interface text-boxes plus a few other standard set bits of information which are required.
    in turn the soap request will pass back a session token which i need to store.
    I've tried using WSMakestubs, which builds successfully the classes, but when calling them method nothing happens.

    Hello Etresoft
    Thanks again for coming back to me.. I would like to add that maybe on my first thread i wasn't as clear on what i was asking for, and also what avenues have have stepped down before asking for help.. Believe me i hate nothing more than not being able to resolve something myself. I'm currently reading 'another' programming in cocoa book by Arron Hillgrass, although he touches on the web service call to a Amazon web service example, he doesn't go into detail about how to actually do this.
    So again thank you for trying to help me.. its greatly appreciated.
    Ok back to the subject, and your response below.. I will try and be as informative as i can.
    I'm want to create a application using the interface builder which has a username and password textfield plus a button called <login>..
    On entering the username and password and pressing the login button, i was to send a request to the a .wdsl (SOAP) web service and login.! the webservice in return will send back a session token, which i need to store for further web service calls.
    In xcode i have been trying now for 1 week..!!! and the more i read up on how to make the Soap request call the more i fail to understand if this is simple or complex.
    * A bit more info if i may, on clicking the login button i need to send information to the below address as a soap type request.
    https://api.betfair.com/global/v3/BFGlobalService.wsdl
    i need to also tell the request the method name which is loginreq
    and also i need to pass these parameters in the request.
    username (from textfield)
    password (from textfield)
    productId = '82'
    vendorsoftwareId = '0'
    locationId = '0'
    ipAddress = '0'
    The stage I've got to is, I've used wsmakestubs and I've tried 'wdsl2objc' to create the classes required. I have then created a app controller class and a interface build app with the textfields and login button. I have then linked up the textfields and button to the nsobject appcontroller with a action ibaction loginreq etc. On build and go the app builds without error's but fails to do anything when i press the login button.. (more i think about this the more i think its either two things, one im not passing the parameters and two im not invoking the loginreq method from the class.)
    I feel like im wading in treacle and getting nowhere fast.!
    All i would like is for some help from someone to point me the correct direction..
    Im thinking that with all the Soap web services out there in the WWW, this must now be a easy thing to do in xcode. Im starting to think im stupid..
    Thanks again for you Help
    Regards
    Iain Smith
    [email protected]

  • Problem in stubbing out Soap Web Service

    Hi,
    I have a problem stubbing out a SOAP web service in Flash Builder 4.  The problem is that not all the classes are created.  This happens when a base class is referenced by a method in the schema.  The classes that extends the base class do not get created.
    Here is an example: method doSomething returns a class called ResponseBase.  Even though MyResponse, which extends ResponseBase, is in a xsd which is referenced by the WSDL, MyResponse class is not created as value objects.
    Another example is: method doSomething takes a parameter called ParamClass.  ParamClass contains a property of type SomeClassBase.  MyClass which extends SomeClassBase is not created even though it is defined in an xsd.
    Does that sound like a limitation of the Flash Builder 4?  Is there another way to create the proxy classes from a web service?
    Thanks,
    Ming

    Sekar,
    I have the same problem.
    How did you change your web service as Anonymous?
    I have a user id and pwd, i tried by appending end of the service and tried with basic authentication by passing uid and pwd. No luck.
    Can you please help me how to change web service as anonymous?
    Regards,
    Sridhar

  • Getting error System.Web.Services.Protocols.SoapException: Server did not r

    I am trying to acces my web service using this code
    Call call = new Call ();
    SOAPMappingRegistry soap = new SOAPMappingRegistry();
    call.setTargetObjectURI ("http://tempuri.org/");
    call.setMethodName ("EarnNValue");
    Vector params = new Vector ();
    params.addElement (new Parameter("customer_id", String.class, "gauravbehl",Constants.NS_URI_SOAP_ENC));
    params.addElement (new Parameter("channel_id", String.class, "C0002",Constants.NS_URI_SOAP_ENC));
    call.setParams (params);
    Response resp = call.invoke(new URL("http://203.199.76.2/api/earnnvalue.asmx"), "http://tempuri.org//EarnNValue") ;
    if (resp.generatedFault ())
    Fault fault = resp.getFault ();
    System.out.println (" Fault Code = " + fault.getFaultCode ());
    System.out.println (" Fault String = " + fault.getFaultString ());
    else
    Parameter result = resp.getReturnValue ();
    System.out.println (result.getValue ());
    out.println (result.getValue ());
    and i am getting the the following error
    Fault Code = soap:Client
    Fault String = System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: http://tempuri.org//EarnNValue.
    at System.Web.Services.Protocols.Soap11ServerProtocolHelper.RouteRequest()
    at System.Web.Services.Protocols.SoapServerProtocol.Initialize()
    at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)
    Please help.
    Thanx
    GB

    <%@ page language="java" import="java.util.*, java.io.*, javax.mail.*, java.net.*, org.apache.soap.util.xml.*, org.apache.soap.encoding.soapenc.BeanSerializer, org.apache.soap.encoding.*,org.apache.soap.*, org.apache.soap.rpc.*"%>
    <%
    try
    out.println ("Starting");
    System.out.println("heree");
    Call call = new Call ();
    System.out.println("here");
    SOAPMappingRegistry soap = new SOAPMappingRegistry();
    call.setTargetObjectURI ("http://tempuri.org/");
    call.setMethodName ("EarnNValue");
    call.setEncodingStyleURI("http://schemas.xmlsoap.org/soap/encoding/");
    Vector params = new Vector ();
    params.addElement (new Parameter("customer_id", String.class, "gauravbehl",Constants.NS_URI_SOAP_ENC));
    params.addElement (new Parameter("channel_id", String.class, "C0002",Constants.NS_URI_SOAP_ENC));
    params.addElement (new Parameter("category_id", String.class, "club",Constants.NS_URI_SOAP_ENC));
    params.addElement (new Parameter("transaction_date", String.class, "16/07/04 14:41:20",Constants.NS_URI_SOAP_ENC));
    params.addElement (new Parameter("parameter_id", String.class, "login",Constants.NS_URI_SOAP_ENC));
    params.addElement (new Parameter("parameter_value", String.class, "1",Constants.NS_URI_SOAP_ENC));
    call.setParams (params);
    Response resp = call.invoke(new URL("http://203.199.76.2/api/earnnvalue.asmx"), "http://tempuri.org//EarnNValue") ;
    if (resp.generatedFault ())
    Fault fault = resp.getFault ();
    System.out.println ("Something is wrong");
    System.out.println (" Fault Code = " + fault.getFaultCode ());
    System.out.println (" Fault String = " + fault.getFaultString ());
    else
    Parameter result = resp.getReturnValue ();
    System.out.println (result.getValue ());
    out.println (result.getValue ());
    catch (Exception e)
    System.out.println ("********Exception*******");
    System.out.println (e);
    out.println ("Ending");
    %>

  • BODS SOAP Web Service Connection error RUN-248005

    Hi Experts,
    I need help connecting SOAP web service to BODS. We have configured the initial set up by importing the functions from the WSDL that was provided to us. The WSDL provided us with a request and reply schema as follows:
    We then created the data service job that would consume the function call. An overview of the dataflow is as follows:
    When we run the job with null values for the source table the job returns no errors, but returns no data either into the destination table (Which we think is to be expected because we have no parameters to search on). If we add a value to the source table that is a required field for WSDL GET function (sys_ID) the job runs, but produces the error shown below:
    We configured the data flow by using a reference document that can be found at this link: http://www.dwbiconcepts.com/etl/23-etl-bods/158-web-service-call-in-sap-data-services.html.
    Any help in regards to why we are getting a “No response to web service error” would be much appreciated! Also, if further detail is needed please feel free to ask.

    Yes we did make progress. Follow the steps listed below.
    Pre-Configuration
    A WSDL for BODS can be provided from your vendor (Amazon or Twitter) or created in-house.  In my tutorial I will be using ServiceNow.  ServiceNow is a platform-as-a-service (PaaS) provider of IT service management (ITSM) software.
    The WSDL provided should look like this:
               https://<instance>.service-now.com/incident.do?WSDL
    To verify that the WSDL works you can open it in a browser to see the xml schema.  Since the WSDL is HTTPS the browser will prompt you to enter credentials in order to view it.  The username and password will need to be provided to you from vendor you are trying to connect to.
    BODS requires that any web service connection that is https to have a certificate saved to its internal configuration on the job server where the application resides. The certificate is referenced when the call goes out to verify authentication. 
    You can get the server certificate from the vendor who is providing the web service or you can also download the certificate from the browser and save it in base64 binary encoded format to a file and use that.  In my example I will be using Firefox to export.
    if you have fire fox, then on the left side before the URL Address bar there will be a lock icon, click on view certificate, select the details tab, select the *.service- now.com  and click on export, in the dialog box, select the Save as type X.509 Certificate (PEM), you can save this with any name on your machine.
    Now go to the JobServer machine, go to %LINK_DIR%\ext\ folder, open axis2.xml in notepad,
    since it's https uncomment the following tag (transportReceiver)
    <!--transportReceiver name="https" class="axis2_http_receiver">
    <parameter name="port" locked="false">6060</parameter>
    <parameter name="exposeHeaders" locked="true">false</parameter>
    </transportReceiver-->
    it should look line something below
    <transportReceiver name="https" class="axis2_http_receiver">
    <parameter name="port" locked="false">6060</parameter>
    <parameter name="exposeHeaders" locked="true">false</parameter>
    </transportReceiver>
    uncomment the following tag (transportSender) and comment out the parameter KEY_FILE and SSL_PASSPHRASE, enter the complete location of the certificate that you saved from the browser in the SERVER_CERT parameter. you can save the certificate also in this folder
    <!--transportSender name="https" class="axis2_http_sender">
    <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
    <parameter name="xml-declaration" insert="false"/>
    </transportSender>
    <parameter name="SERVER_CERT">/path/to/ca/certificate</parameter>
    <parameter name="KEY_FILE">/path/to/client/certificate/chain/file</parameter>
    <parameter name="SSL_PASSPHRASE">passphrase</parameter>
    -->
    this should look like
    <transportSender name="https" class="axis2_http_sender">
    <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
    <parameter name="xml-declaration" insert="false"/>
    </transportSender>
    <parameter name="SERVER_CERT">enter the certificate path</parameter>
    <!--parameter name="KEY_FILE">/path/to/client/certificate/chain/file</parameter-->
    <!--parameter name="SSL_PASSPHRASE">passphrase</parameter-->
    save this file and open this file is browser to make sure that the XML is valid
    ****How to set up multiple axis files****
    Creating a Datastore
    Select Project -> New- >  Datastore
              Datastore name: Applicable Name
              Datastore Type:  Web Service
              Web Service URL: https://<instance>.service-now.com/incident_list.do?WSDL
              Advance <<
              User name: *****
              Password: ******
              Axis2/c config file path: \Program Files (x86)\Business Objects\BusinessObjects Data           Services\ext\Service_now

  • SOAP Web Services in JDeveloper

    Hello!
    As you helped me with my other problems, I hope you can help another time:
    A SOAP web service that was already running, won't do that anymore, but shows up the following two error messages:
    [SOAPException: faultCode=SOAP-ENV:IOException; msg=Request aborted by user; targetException=java.io.IOException: Request aborted by user]
    [SOAPException: faultCode=SOAP-ENV:Server; msg=service &apos;soapconverter.CurrencyConverter&apos; unknown]
    Anyone any idea for those messages? soapconverter.CurrencyConverter is the name of the service.
    Thanks in advance.
    Sven Leipold

    For whatever reason the first described error occurs only once, if my computer ist started newly, then it nevers comes up again. Strange.
    The second error stays, as you requested I searched a little deeper in the stub and can present yo the following:
    This is how the source looks like of one function (but it happens with all the same):
    public void setRate(Double rate) throws Exception {
    URL endpointURL = new URL(endpoint);
    Call call = new Call();
    call.setSOAPTransport(m_httpConnection);
    call.setTargetObjectURI("soapconverter.CurrencyConverter");
    call.setMethodName("setRate");
    call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
    Vector params = new Vector();
    params.addElement(new Parameter("rate", Double.class, rate, null));
    call.setParams(params);
    System.err.println(call);
    Response response = call.invoke(endpointURL, "");
    System.err.println(response);
    if (!response.generatedFault()) {
    Parameter result = response.getReturnValue();
    else {
    Fault fault = response.getFault();
    throw new SOAPException(fault.getFaultCode(), fault.getFaultString());
    The output of my debugging lines is here:
    The call:
    [Header=null] [methodName=setRate] [targetObjectURI=soapconverter.CurrencyConverter] [encodingStyleURI=http://schemas.xmlsoap.org/soap/encoding/] [SOAPContext=[Parts={}]] [Params={[[name=rate] [type=class java.lang.Double] [value=0.9136] [encodingStyleURI=null]]}]
    The response:
    [Header=null] [methodName=null] [targetObjectURI=null] [encodingStyleURI=null] [SOAPContext=[Parts={[cid:null type: text/xml; charset=utf-8 enc: null]}]] [fault=[Attributes={}] [faultCode=SOAP-ENV:Server] [faultString=service 'soapconverter.CurrencyConverter' unknown] [faultActorURI=/soap/servlet/soaprouter] [DetailEntries=] [FaultEntries=]] [Params={}]
    Is there anything you can see from this?
    Finally: there is nothing with the proxy settings as everything runs on my computer and the settings are all turned off.
    Thank you for your kind help.
    Sven

  • How to expose a SOAP web service from HCP

    Hello All,
    Currently I am trying to create a SOAP web service within a HCP Java application to allow backend systems to consume data stored in HCP.
    This is the planned scenario:
    1. Create data in HCP - therefor I am using JPA and a oData Model.
    2. Backend uses web service to consume data from HCP - with this point I do have some problems.. I do want to create a SOAP web service in order to achieve this.
    Is there an easy way to create a SOAP web service in HCP? There are many tutorials in the internet of how to create a SOAP web service in 20 sec´s, but non of these helped me. I do was able to consume a SOAP web service in HCP coming from the ByD, but the other way around seems pretty complicated...
    Can I make use of the Eclipse functions to create a web service? (New --> Other... --> Web Services --> Web Service and than choose the Button up Java bean Web Service type)
    Have any of you some coding snippets that would probably help me out?
    I have unsuccessfully tried to use the @WebService, @SOAPBinding, @WebMethod notation in my java classes...
    Thank you,
    Swen

    Hello Nedelcho,
    Yes. All the required jar files are in the lib directory.
    Currently I am able to create a web service locally.
    But when I deploy that to the cloud server my JPA service is not working any more.
    Receiving the following error message:
    <?xml version='1.0' encoding='UTF-8'?><error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><code/><message xml:lang="en">javax.naming.NamingException: Error while attempting to resolve reference [Root exception is javax.naming.NamingException: Cannot create resource  object instance due to exception in the object factory [Root exception is javax.naming.NamingException: Data source 'jdbc/DefaultDB' not available.]]</message></error>
    The web.xml contains the following:
    Any advice?
    Best regards,
    Swen

  • How to move data connections with SOAP web service in different environments in InfoPath Forms 2010

    Hello,
    I've an InfoPath Form where I've around 10 SOAP web service data connections. They are calling a custom web service for a custom business process. The web service URL has a query string parameter which identifies whether it's a Test web service or the Production
    one. The web service URL looks like this:
    http://server/webservice/wsdl?targetURI=testSPRead (for the Test environment)
    http://server/webservice/wsdl?targetURI=ProdSPRead (for the Production environment)
    When I develop the form in Dev environment, I use the Test web service URL and save the data connection as UDCX files in the data connection library. After completing the development, when I deploy this Form in Production, I update the URL in the UDCX
    file in the Production data connection library, but when I run the Form in Production, it throws error 'Error occurred in calling the web service'. After doing more research, when I extracted the XSN file and opened Manifest.xsf file in Notepad, I found the
    references of 'testSPRead' parameter.
    So, in the UDCX file the web service URL is '/targetURI=ProdSPRead' but in the Manifest.xsf file, there is a reference of Test web service parameter which is 'testSPRead' and that's why it's throwing error.
    For testing purpose, I updated the Manifest.xsf file and replaced all the occurrences of 'testSPRead' to 'ProdSPRead' and also updated all the relevant files of the data connections (like XML, XSF etc.) and saved the Manifest.xsf as Form.xsn and deployed
    in Prod and it worked.
    The question is - is this the right way of doing it? There should be a simple method in such cases where web service has conditional parameter to identify the Test and Production web service.
    Does somebody know what is the right way of doing it? I also thought of adding 'double' data connections - one set of Test and another set of Production and call them by identifying the current SharePointServerRootURL, but that's a lot of work. I've 10 web
    service data connections in my Form and in that case I'll be having 20 data connections and setting their parameters in different Rules is too much work.
    Please advise. It's very important for me!
    Thanks in advance.
    Ashish

    Thanks for your response Hemendra!
    I hope Microsoft improves this thing in subsequent patches of InfoPath 2010 or InfoPath 2013 because I don't think this is a very special requirement. This is failing the purpose of having UDCX files for data connections. Why the WSDL's parameter value
    is being written in the Manifest.xsf and other XSF and XML files. InfoPath should always refer the URL and parameters from the UDCX files.
    --Ashish

  • SOAP Web Service Authentication configuration

    Hello,
    I've got a little problem with Web Service authentication configuration.
    I'm working on the SAP NetWeaver CE EHP1 7.11. I also have a XMII application deployed on the server and there are some SOAP Web Services(over XMII Transactions) that require basic authentication.
    I use all Web Services in the EJB layer. So, I've generated proxy using SAP NetWeaver as a Web Service Runtime for generation. And Iuse an injection mechanism to get a service implementation:
    @WebServiceRef(name="GetBatchListService")
    private XacuteWS batchListWS;
    In this case I could use Single Service Administration application in the NetWeaver Administrator@SOA Management@Application and Scenario Communication to configure basic authentication for EVERY Web Service. And this configuration disappears after every redeploy.
    The question is how and where could I configure authentication for all web services?
    I've read a lot of documentation, but, unfortunately, I haven't found needed one. I could see 2 direction of searching now, it might help:
    1) Destination: Configure HTTP Destination or Web Service Template Destination and use it in all Web Services proxies somehow.
    2) Find Configuration way: Create a configuration group or anything else to configure all services from one screen.
    Best Regards,
    Dmitry

    Dimtris,
    If your WSDL url is pointing to the URL of the Adapter Engine as shownin the Hot to Use the SOAP adapter there is no option. You cannot add it to the SOAP Url.
    But, if you change the SOAP Url to the Url shown in this blog by Stefan Grube then you can add the user id and pasword to the url by adding sap- user=userid and sap-password = password.
    The optin shown ion the blog by Grube can be used as long as you do not have to use SOAP attachments and in this  case you would not need both sender SOAP adapter and a sender agreement.
    /people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
    Regards
    Bhavesh
    Regards
    Bhavesh

  • Schema Data Type in SOAP Web Service while using Integration Gateway in SMP 3.0

    Hi Experts,
    I was working on Integration gateway component of SMP 3.0.3 where we can have oData services which connect to different data source from SMP and finally we have to consume from SMP. Here I have an SOAP Web service where there is Schema Data type which is an xml structure and because of that while doing the data modelling with Design time tools I am not able to map the properties as there aren't any as only the parent level Schema type is available in the SOAP Web Services. Please see the below image for reference :
    So now I have 2 inputs no problems for design as such then I have the schema for that which comes as a output response which is where I am facing the issue as we don't have that Data Structure itself so how are we going to map that. I have seen some thin possibilities with Custom Scripts with SMP SP06 where this will help us to process the request and response at runtime with JS/Groovy. So needed some lights on this schema data type on Integration Gateway component of SMP 3.0.3 which we are planning to upgrade to SP06 as well so it will be a good starting point for this as well
    Also have concerned my good friend Rakshit Doshi for this as well.
    Regards,
    Fenil.

    Hi All,
    Sorry for the late response guys was stuck somewhere else and so couldn't reply to this, see I have below response in SOAP UI
    There if we see we have the schema as the whole structure being defined under which we have all the child elements, am also posting the raw response from the soapUI below for better understanding
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <soap:Body>
          <GetMSUserLoginDetailsResponse xmlns="http://tempuri.org/">
             <GetMSUserLoginDetailsResult>
                <xs:schema id="MemberDetails" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
                   <xs:element name="MemberDetails" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
                      <xs:complexType>
                         <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="Table">
                               <xs:complexType>
                                  <xs:sequence>
                                     <xs:element name="RECID" type="xs:string" minOccurs="0"/>
                                     <xs:element name="FNAME" type="xs:string" minOccurs="0"/>
                                     <xs:element name="LNAME" type="xs:string" minOccurs="0"/>
                                     <xs:element name="CUSTNO" type="xs:decimal" minOccurs="0"/>
                                     <xs:element name="MEMTYP" type="xs:decimal" minOccurs="0"/>
                                     <xs:element name="MEMTYPENAME" type="xs:string" minOccurs="0"/>
                                     <xs:element name="CUSTTYP" type="xs:decimal" minOccurs="0"/>
                                     <xs:element name="EMAIL" type="xs:string" minOccurs="0"/>
                                     <xs:element name="MEMPASSWORD" type="xs:string" minOccurs="0"/>
                                     <xs:element name="ISDEBIT" type="xs:decimal" minOccurs="0"/>
                                     <xs:element name="PARENTID" type="xs:string" minOccurs="0"/>
                                     <xs:element name="CHILDOF" type="xs:string" minOccurs="0"/>
                                     <xs:element name="CUSTTYP1" type="xs:string" minOccurs="0"/>
                                     <xs:element name="ZONEID" type="xs:int" minOccurs="0"/>
                                     <xs:element name="EMAILFOOTERDETAIL" type="xs:string" minOccurs="0"/>
                                  </xs:sequence>
                               </xs:complexType>
                            </xs:element>
                            <xs:element name="Table1">
                               <xs:complexType>
                                  <xs:sequence>
                                     <xs:element name="ErrorCode" type="xs:string" minOccurs="0"/>
                                     <xs:element name="ErrorDesc" type="xs:string" minOccurs="0"/>
                                  </xs:sequence>
                               </xs:complexType>
                            </xs:element>
                         </xs:choice>
                      </xs:complexType>
                   </xs:element>
                </xs:schema>
                <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
                   <MemberDetails xmlns="">
                      <Table diffgr:id="Table1" msdata:rowOrder="0">
                         <RECID>97101-101-0000057069</RECID>
                         <FNAME>Fenil</FNAME>
                         <LNAME>Doshi</LNAME>
                         <CUSTNO>1042231</CUSTNO>
                         <MEMTYP>42</MEMTYP>
                         <MEMTYPENAME>Management</MEMTYPENAME>
                         <CUSTTYP>8</CUSTTYP>
                         <EMAIL>[email protected]</EMAIL>
                         <MEMPASSWORD>as</MEMPASSWORD>
                         <PARENTID>97101-101-0000057069</PARENTID>
                         <CUSTTYP1>Zone</CUSTTYP1>
                         <ZONEID>2</ZONEID>
                         <EMAILFOOTERDETAIL><![CDATA[<strong></strong><br />]]></EMAILFOOTERDETAIL>
                      </Table>
                      <Table1 diffgr:id="Table11" msdata:rowOrder="0">
                         <ErrorCode>100</ErrorCode>
                         <ErrorDesc>Login Successful.</ErrorDesc>
                      </Table1>
                   </MemberDetails>
                </diffgr:diffgram>
             </GetMSUserLoginDetailsResult>
          </GetMSUserLoginDetailsResponse>
       </soap:Body>
    </soap:Envelope>
    So we have the data but as a xml Structure which is nothing but schema and is my Eclipse while mapping while defining response type it gives me just an schema as the property.
    Regards,
    Fenil.

  • SOAP/Web service based repository manager

    Hi,
    We would like to implement a repository manager using SOAP/Web service messages to connect to the document store.  The solution will have to support most opperations as the WebDAV repository manager supports.  TREX has to be able to crawl for indexing/classification, but I guess that is not a problem.
    Is the some information out there on creating repository managers like this, and how they tie in with ACL managers, cahces etc?
    Message was edited by: Bjorn Bjornstad

    Not relevant any more

  • File --- to--- Soap(web service)

    Hi all,
    i am doing  File ->to->Soap(web service) scenario.
    my requiremenmt would be
    1.Can we able to re-trigger failed & successful messages
    2.Can we we able send the consolidated XML for the day irrespective of individual xml's
    3.we able to send the same XML data of the same client to multiple url's
    4.the compression/encryption of an XML is possible or not
    ccould you provide me the solutions for these steps.
    Thanks in advance,
    AVR

    >
    AVReddi wrote:
    > Hi all,
    > i am doing  File ->to->Soap(web service) scenario.
    >
    > my requiremenmt would be
    > 1.Can we able to re-trigger failed & successful messages
    if the flow is asyc, you can always retrigger failed messages. Also successful messages can be retriggered manually using the test tab in RWB
    > 2.Can we we able send the consolidated XML for the day irrespective of individual xml's
    This will be a collect kind of scenario. You will use a BPM to start collecting all the files and then trigger a message based on you collect criteria
    > 3.we able to send the same XML data of the same client to multiple url's
    yes. use multiple receivers or multiple inbound interfaces in your interface determination
    > 4.the compression/encryption of an XML is possible or not
    >
    > ccould you provide me the solutions for these steps.
    >
    > Thanks in advance,
    > AVR
    use HTTPS in your SOAP adapter i.e certificates

Maybe you are looking for