How to handle Coldfusion SOAP Web Service Errors

Hi,
I have just created simple wsdl example:
My Component:
<cfcomponent displayname="mytest">
    <cffunction name="service_login_authentication" access="remote" output="true" returntype="any" hint="Returns login">
     <cfargument name="login" type="string" required="yes">
        <cfargument name="password" type="string" required="yes">
          <cfif #arguments.login# eq "abcdef" and #arguments.password# eq "123456">
                  <cfxml variable="soapRes">                
                        <kps_response>
                            <message>OK</message>
                            <token>354dfdffsdf</token>
                         </kps_response>
                    </cfxml>
             <cfelse>
                     <cfthrow type="MyException" message="INVALID LOGIN" errorcode="1000" />
         </cfif>        
      <cfreturn soapRes >
    </cffunction>
</cfcomponent>
Its generating wsdl and no problem with response but when generating any error like username and password does not match then it's generating fault code like this:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
      <soapenv:Fault>
         <faultcode>soapenv:Server.userException</faultcode>
         <faultstring>coldfusion.xml.rpc.CFCInvocationException: [coldfusion.runtime.CustomException : INVALID LOGIN. ]</faultstring>
         <detail>
            <ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">HOST_NAME</ns1:hostname>
         </detail>
      </soapenv:Fault>
   </soapenv:Body>
</soapenv:Envelope>
But I want customize Fault Code like this:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
      <soapenv:Fault>
         <faultcode>1000</faultcode>
         <faultstring>INVALID LOGIN</faultstring>
      </soapenv:Fault>
   </soapenv:Body>
</soapenv:Envelope>
Fault Code and Fault String should be customize and I don't want detail tag completely. In old ColdFusion version like ColdFusion 8 displaying detail tag with <ns1:stackTrace xmlns:ns1="http://xml.apache.org/axis/"> coldfusion.xml.rpc.CFCInvocationException: and so on.
Any suggestions on how to create customize faultcode and faultstring is very helpful.
Thanks!!

But my component is not produces this fault code:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">                   
                            <soapenv:Body>                   
                                  <soapenv:Fault>                   
                                     <<faultcode>1000</faultcode>                   
                                               <faultstring>INVALID LOGIN</faultstring>                   
                                  </soapenv:Fault>                   
                               </soapenv:Body>                   
</soapenv:Envelope>
What is your ColdFusion Version as i have checked in ColdFusion 11 developer edition and ColdFusion 8 enterprise which is on window 2003 server.
Could you please check my below component, did i am doing something wrong.
<cfcomponent output="false">
    <cffunction name="service_login_authentication" access="remote" output="true" returntype="any" hint="Returns login">
     <cfargument name="login" type="string" required="yes">
        <cfargument name="password" type="string" required="yes">
  <cfset var isLoginValid = False>
        <cftry>
          <cfif #arguments.login# eq "1111" and #arguments.password# eq "1111">
              <cfset isLoginValid = True>
            </cfif>
             <cfif isLoginValid>
                    <cfsavecontent variable="soapRes"><?xml version="1.0" encoding="UTF-8"?>           
                       <kps_response>           
                           <message>OK</message>           
                           <token>354dfdffsdf</token>           
                        </kps_response>           
                     </cfsavecontent>           
                <cfelse>           
                    <cfthrow type="MyException" message="INVALID LOGIN" errorcode="1000" />           
                </cfif>
                  <cfcatch type="MyException">           
                     <cfsavecontent variable="soapRes">               
                            <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">                   
                            <soapenv:Body>                   
                                  <soapenv:Fault>                   
                                     <<cfoutput><faultcode>#cfcatch.errorCode#</faultcode>                   
                                               <faultstring>#cfcatch.message#</faultstring></cfoutput>                   
                                  </soapenv:Fault>                   
                               </soapenv:Body>                   
                            </soapenv:Envelope>                  
                       </cfsavecontent>
                </cfcatch>
            </cftry>     
      <cfreturn soapRes >
    </cffunction>
</cfcomponent>
If my component is okay then may be possible some setting in ColdFusion administrator. i have checked in SoapUI as well via getSoapResponse method.

Similar Messages

  • 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

  • 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]

  • SOAP-Web Service Error

    Hi guys
    I am trying "Siva Maranani's" weblog "Invoke Webservices using SAP XI" and have several errors.
    My first attempt was to send a message using the RWB.
    My input:
    Send to:    http://host:8000/sap/xi/engine?type=entry
    Sender:     OP_CALC_WS
    Interface:  MI_CALC_WS_OB
    Namespace:  op:xi:calc:ws
    User:       xiappluser
    Password:   .....
    QoS:        BE
    Payload:    <The request message without the SOAP 
                  envelope>
    It shows that the message is sent successfully but in sxmb_moni the error "NO_RECEIVER_CASE_BE" occurs.
    Is the send to URL correct?
    Do I need two Receiver Determination in my configuration?

    Hi all, we are in difficult with the same weblog. When we try to send a SOAP request obtain:
    <?xml version="1.0"?>
    <!-- see the documentation -->
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
         <SOAP:Body>
              <SOAP:Fault>
                   <faultcode>SOAP:Server</faultcode>
                   <faultstring>Server Error</faultstring>
                   <detail>
                        <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                             <context>XIAdapter</context>
                             <code>ModuleUnknownException</code>
                             <text><![CDATA[
    com.sap.aii.af.mp.module.ModuleException: either no channelID specified or no channel found for the specified party, service, and channel name, MessageServlet(Version $Id: //tc/aii/30_REL/src/_adapters/_soap/java/com/sap/aii/af/mp/soap/web/MessageServlet.java#7 $)
         at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:497)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:391)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:265)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java(Compiled Code))
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java(Compiled Code))
         at java.security.AccessController.doPrivileged1(Native Method)
         at java.security.AccessController.doPrivileged(AccessController.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java(Compiled Code))
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java(Compiled Code))
              ]]></text>
                        </s:SystemError>
                   </detail>
              </SOAP:Fault>
         </SOAP:Body>
    </SOAP:Envelope>
    Is there anybody who help us ?
    Thanks in advance
    Best regards
    Gianfranco

  • How to handle attachment in Web Services?

    is there any way to handle attachments in JCAPS Web Services? If you have any white paper/documents please provide me link?
    Thanks

    Hi ,
    When you create a Project in JCAPS you need to import saaj.jar file this will allow you to handle attachments comming in soap.
    Thanks,
    -Arun

  • Calling a soap web service from a java desktop application

    Hi,
    Does anyone know how to call a soap web service from a java desktop application? I've seen examples using Apache Axis, but it sounds like Axis needs to run on a web server and we are trying to avoid that. My initial thought was that, "of course we need a web server", but I'm wondering if there is a way to do this without a web server.
    Any help is greatly appreciated.
    thank you,
    Julie

    If you are the consumer you don't need any web server. The web server is only needed in the provider end.
    In java 6 there is a built in framework to call web services without the need of third parties (such as apache axis)
    take a look at:
    https://jax-ws.dev.java.net/guide/Developing_client_application_with_locally_packaged_WSDL.html
    http://java.sun.com/webservices/technologies/index.jsp
    For the provider end there is also a built in http server to expose web service via HTTP without the need to
    use any external web server.
    take a look at:
    http://java.sun.com/javase/6/docs/api/javax/xml/ws/Endpoint.html

  • 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

  • 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]

  • 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

  • How to send authentication information to SOAP Web Service using MATE framework

    Hi,
    Can anyone please tell me how to pass authentication info (such as user name & password) while calling a webservice using MATE's webserviceinvoker? the SOAP web service expects authentication info in the header.
    Thanks in advance..

    HI Swayam,
    First of all you should tell us what blogs you have seen to avoid you to repeat information that you already know.
    we want to avoid  setting up SLD configuration for sender system because  sender system is just consuming web service .
    This is not necessary,
    Please let me know  the ways we can configure . I did understand we can publish and register the WSDL from Service interface ,but was not clear on over all  scenario .
    Do you have your ECC webservice available via SOAManager?, you only to access it via soap receiver in SAP PI.
    To publish, you need to publish only the sender SOAP, when you register there the sender soap your partner could access there to get the WSDL (Publish services from PI 7.1 to the Service Registry). Also you can generate directly the wsdl (Display WSDL - Integration Directory - SAP Library), what do you want?
    Regards,

  • How to access  complex data type from a soap web services?

    hello
    can u please tell me how can i access complex data type from a soap web service from jdeveloper 10g
    Jdeveloper generates 3 classes
    serviceStub
    getproperties
    response
    i have to retreview the data which is a complex data type it gives some
    unknown type. and the return value is a key-value pair data type .
    regards
    vs

    After you create the partner link and the invoke (to create the variables), change the element type of the response message to the complex type definition of your collection that appears in the XSD. You can do the same thing if you want to change the element type of the payload of the request message as well.

  • SAP Web Service error text : The database returned a value containing an error , type  CX_SY_OPEN_SQL_DB

    Hello Guru's,
    we are creating sales order in SAP from a quote created in .NET,  through Web Service created in SAP, and consumed in .NET.
    When ever a order is created in SAP for a given quote, SAP returns the sales order number to .NET.
    Orders are getting created as expected, but once in a while we are getting the following error from webservice :
    Web service processing error; more details in the web service error log on provider side (UTC timestamp 20140609173429; Transaction ID 4DFCEFE33301F1EBB5CE00155D0B4530)
    But the problem is order is getting created in SAP for the perticular quote for which we are getting the above error and this order number is not getting returned to .NET.
    Upon analysis in TCODE  SRT_UTIL for the above transaction ID, has the following details , which are hardly help full to resolve the error.
    ----TYPE                                  CX_SY_OPEN_SQL_DB
    ----ERROR_TEXT                   The database returned a value containing an error
    ----CX_SY_NO_HANDLER
    -----CLASSNAME                     CX_SY_OPEN_SQL_DB
    This Exception raised by Web Service application
    Could you please help in resolving this issue or alteast provide an approach for the same.
    Thank you,
    Suresh.

    Thank you Bhaskar,
    How can we clarify whether the error is from SAP or Web part.
    I have checked ST22, but there is not entry for the perticular  exception transaction ID
    My exception time stamp is
    -------------------START-------------6/9/2014 1:34:33 PM
    Error :Web service processing error; more details in the web service error log on provider side (UTC timestamp 20140609173429; Transaction ID 4DFCEFE33301F1EBB5CE00155D0B4530)
    -------------------END-------------6/9/2014 1:34:33 PM
    In al11, i found the following for the perticular exception time stamp
    **** Trace file opened at 20140609 133431 Eastern Daylight Time, by disp+work
    **** Versions SAP-REL 720,0,500 RFC-VER U 3 1442251 MT-SL
    XRFC> Begin of user trace
    XRFC> ---------------------------------------------------------------------
    XRFC>                                                                     <
    XRFC> TRACE SOAP RUNTIME - header                                         <
    XRFC>                                                                     <
    XRFC> ------------------------------------------------------------------  <
    XRFC> REQ_SIZE   : 2685                                                   <
    XRFC> RESP_SIZE  : 0                                                      <
    XRFC> PARENT_ID  : ROOT_CALL_ID                                           <
    XRFC> TRC_KEY    : 40FCEFE3BD6EF184B5CE00155D0B4530                       <
    XRFC> REQ_BASED  :                                                        <
    XRFC> SESSION_ID : 0003925540FCEFE3BD6EF17DB5CE00155D0B4530               <
    XRFC> TS_CALL    : 20140609173408.2880000                                 <
    XRFC> SY_UNAME   :                                            <
    XRFC> HOSTNAME   :                                              <
    XRFC> SY_SID     : PRD                                                    <
    XRFC> SY_MANDT   : 300                                                    <
    XRFC> SYS_NR     : 19                                                     <
    XRFC> APPLSERVER :                                      <
    XRFC> ISPRESCHED : X                                                      <
    XRFC> DURATION   : 21810                                                  <
    XRFC> NETHDRTIME : 21810                                                  <
    XRFC> CALL_STATE : 2                                                      <
    XRFC> ERRORTYPE  : APPLFAIL                                               <
    XRFC> ERRORAREA  : APPL                                                   <
    XRFC> CTXDP_TYPE : SOAP_RUNTIME                                           <
    XRFC> SYNC_ASYNC : S                                                      <
    XRFC> LOCATION   : P                                                      <
    XRFC> DIRECTION  : I                                                      <
    XRFC> REQ_ID     : 91C57815916E421CA9F3D652FFACE9C7                       <
    XRFC> RESP_ID    : 00155D0B45301EE3BBFF89A0267EB5CE                       <
    XRFC> MSG_STATE  : 114                                                    <
    XRFC> IF_NAME_I  : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> IF_NS_E    : urn:sap-com:document:sap:soap:functions:mc-style       <
    XRFC> IF_NAME_E  : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> ISSHORTCUT :                                                        <
    XRFC> TRC_PATT   : WSTEST                                                 <
    XRFC> TRC_SSID   : PRD_19                                                 <
    XRFC> TRC_USER   :                                           <
    XRFC> TRC_TS     : 20140609173409                                         <
    XRFC> TRC_COUNT  : 99                                                     <
    XRFC> TRC_EXT    :                                                        <
    XRFC> COMPLETE   : OK                                                     <
    XRFC> CALLEDPROG : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> SOAP_APPLI : urn:sap-com:soap:runtime:application:rfc:710           <
    XRFC> CONF_ID    : 00155D0B45301EE3AEFDAD78756555CE                       <
    XRFC> BIND_ID    : 00155D0B45301EE3AEFDAD787565B5CE                       <
    XRFC> OP_NAME    : ZsdCsCreateSalesorder                                  <
    XRFC> COMM_PATRN : Method:ZsdCsCreateSalesorder                           <
    XRFC> OP_NS      : urn:sap-com:document:sap:soap:functions:mc-style       <
    XRFC> REMADDRESS : 172.16.11.43                                           <
    XRFC> DT_OBJ     : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> MEMCONSUMP : 296291                                                 <
    XRFC> WSHOST     :                                                        <
    XRFC> WSPORT     :                                                        <
    XRFC> WSPROT     :                                                        <
    XRFC> WSCLIENT   :                                                        <
    XRFC> WSPATH     :                                                        <
    XRFC> PXYHOST    :                                                        <
    XRFC> PXYPORT    :                                                        <
    XRFC> USEDRFCDES :                                                        <
    XRFC> BONAME     :                                                        <
    XRFC> PROCCOMP   :                                                        <
    XRFC> DEPLOYUNIT :                                                        <
    XRFC> ------------------------------------------------------------------  <
    XRFC>                                                                     <
    XRFC> TRACE SOAP RUNTIME - trace records                                  <
    XRFC>                                                                     <
    XRFC> ------------------------------------------------------------------  <
    XRFC> E SOAP_RUNTIME 20140609173429.7400000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING Exception handling for IF "ZSD_CS_CREATE       <
    XRFC> _SALESORDER_SERVI" OP name "ZsdCsCreateSalesorder" MSG ID           <
    XRFC> "91C57815916E421CA9F3D652FFACE9C7" user "STULZWEBSERV"              <
    XRFC>                                                                     <
    XRFC>                                                                     <
    XRFC> E SOAP_RUNTIME 20140609173429.7240000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING CX_SOAP_ROOT : An exception has occurred. |    <
    XRFC> program: CL_SOAP_RUNTIME_ROOT==========CP include: CL_SOAP          <
    XRFC> _RUNTIME_ROOT==========CM004 line: 120                              <
    XRFC>                                                                     <
    XRFC>                                                                     <
    XRFC> E SOAP_RUNTIME 20140609173429.7400000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING CX_SY_NO_HANDLER : An exception with the type  <
    XRFC> CX_SY_OPEN_SQL_DB occurred, but was neither handled locally, nor    <
    XRFC> declared in a RAISING clause | program: SAPLSTXD include: LSTXDFDB  <
    XRFC> line: 200                                                           <
    XRFC>                                                                     <
    XRFC>                                                                     <
    XRFC> E SOAP_RUNTIME 20140609173429.7400000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING CX_SY_OPEN_SQL_DB : The database returned a    <
    XRFC> value containing an error | program: SAPLSTXD include: LSTXDFDB     <
    XRFC> line: 227                                                           <
    XRFC>                                                                     <
    XRFC> ---------------------------------------------------------------------
    XRFC> End of user trace

  • 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

  • How to use WS-RM web Service from Session Bean?

    Hi all.
    Could you tell me the way how to call WS-RM web service(Staring BPM Process) from SessionBean?
    Our environment: SAP NetWeaver CE 7.2 SP3
    I do the following.
    I have created a BPM Process starting with Message Start Event.
    This Message Start Event was created by Service Interface(stateless and asynchronous) which was imported from ESR.
    I deployed this into my server and it worked fine in webservice navigator as a WS-RM WebService.
    But I can't call this webservice from SessionBean in EJBExplorer.
    I get the following error message:
    Caused by: This exception is wrapper of javax.xml.ws.soap.SOAPFaultException. com.sap.engine.services.webservices.espba
    se.client.bindings.exceptions.SOAPFaultException: Invalid WS-RM message. There are no WS-RM headers within SOAP message.
    at com.sap.engine.services.webservices.espbase.client.bindings.impl.JAXWSUtil.processFault(JAXWSUtil.java:412)
    at com.sap.engine.services.webservices.espbase.client.bindings.impl.SOAPTransportBinding.call_SOAP(SOAPTransportBinding.java:1366)
    at com.sap.engine.services.webservices.espbase.client.bindings.impl.SOAPTransportBinding.callWOLogging(SOAPTransportBinding.java:960)
    at com.sap.engine.services.webservices.espbase.client.bindings.impl.SOAPTransportBinding.call(SOAPTransportBinding.java:915)
    at com.sap.engine.services.webservices.espbase.client.jaxws.core.WSInvocationHandler.processTransportBindingCall(WSInvocationHandler.java:168)
    at com.sap.engine.services.webservices.espbase.client.jaxws.core.WSInvocationHandler.invokeSEISyncMethod(WSInvocationHandler.java:121)
    at com.sap.engine.services.webservices.espbase.client.jaxws.core.WSInvocationHandler.invokeSEIMethod(WSInvocationHandler.java:84)
    at com.sap.engine.services.webservices.espbase.client.jaxws.core.WSInvocationHandler.invoke(WSInvocationHandler.java:65)
    at $Proxy2753.zwsvCheckOrderdataMainprocessStart(Unknown Source)
    at jp.co.ogis_ri.WSTestSessionBean.exeWS(WSTestSessionBean.java:81)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    I created this SessionBean as follows:
    I created DCs for EJB and created SessionBean in EJB DC.
    I imported a WSDL file(WS-RM web service) from Service Registory and
    I created service clients and Service References.
    After that I implemented SessionBean to call web service checking with this help.
    http://help.sap.com/saphelp_nwce72/helpdata/en/44/4d2bb1c6b00597e10000000a155369/frameset.htm
    After deploying this EJB,I configured properties in nwa.
    Thanks
    Yuichi

    Yuichi
    Did you manage to solve this?  I'm doing something similar and seeing the same problem, although they're up to 7.3 SP7.
    Any help greatly appreciated.
    Lewis

  • How to overload method in web services ?

    hi all !
    how can i overload a web services method ? , i hear about using javax.xml.ws.RequestWrapper , but when i try to use wsimport , it say : error dupplicate method.
    this is the sample from forum :
    package my.ws;
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebService;
    import javax.xml.ws.RequestWrapper;
    import javax.xml.ws.ResponseWrapper;
    @WebService
    //(name="HelloWS", serviceName="HelloWSService")
    public class Hello {
          * Web service operation
         @WebMethod
         @RequestWrapper(className = "com.veera.Clac.CalculatorRequest", targetNamespace = "http://Calc.veera.com/")
         @ResponseWrapper(className = "com.veera.Clac.CalculatorResponse", targetNamespace = "http://Calc.veera.com/")
         public int add(@WebParam(name = "a")
         int a, @WebParam(name = "b")
         int b) {
              // TODO implement operation
              return 0;
          * Web service operation
         @WebMethod
         @RequestWrapper(className = "com.veera.Clac.CalculatorOverloadRequest", targetNamespace = "http://CalcOverLoad.veera.com/")
         @ResponseWrapper(className = "com.veera.Clac.CalculatorOverloadResponse", targetNamespace = "http://CalcOverLoad.veera.com/")
         public String add(@WebParam(name = "v")
         String v) {
              // TODO implement operation
              return "Veera";
    }thanks

    Hi, Eric,
    Thank you for your quick reply.
    The web service I am trying to develop is basically a generic Data Access Component to bridge between SQL server and a desktop .Net application. The application will have about 3000 users from WAN, therefore we want to have a server side component to handle connection pooling etc. Because of limitation of current servers, we are asked to develop a Java Web Service, instead of MS WS.
    To make the component more reusable, I am thinking to have methods like this in the service:
    RunQueryReturnRS(String Sql, WebRowSet, rs)
    RunQueryReturnInt(String Sql, int NumRecdImpacted)
    RunStoredProcedureReturnRS(….)
    RunStoredProcedureReturnInt(….)
    ……
    You see, I would like to get whole resultset back to client, including both metadata and data in a format of generic resultset. When I paged through the Sun’s document, finding WebRowSet is claimed to be seariable, and ready for Web Service. I thought if I can use WebRowSet that will save me time to write new classes to hold resultset info and pass back to client.
    Could you please tell me if it is a feasible approach?
    Thank you.
    -Qing

Maybe you are looking for