Failed to consume web service having datetime and date fields

Hi everyone,
We are trying to consume .net webservices which are exposed in SAP. But while cretaing proxy we having issues which is showing error shown below
XSD date doesnot exactly corresponds to the ABAP type DATS
XSD type dateTime does not exactly correspond to the ABAP type String.
cheers
ram

Below is the code to add security header.
public List<String> lookup(String lenderid, String url, String user, String pw) throws SOAPException { 
      SOAPHeader header = message.getSOAPHeader();
           if (header == null) {
                 header = envelope.addHeader();
            SOAPElement headerElement = createSecurityHeader(uName, pWord);
            soapHeader.addChildElement(headerElement);.................
private static SOAPElement createSecurityHeader(String uName,String pWord) throws SOAPException {
       SOAPElement UsernameToken = null;
       SOAPFactory sFactory = SOAPFactory.newInstance();
       UsernameToken = sFactory.createElement("wsse:UsernameToken", "", WS);
       SOAPElement Username = sFactory.createElement("wsse:Username","", WS);
       Username.setValue(uName);
       UsernameToken.addChildElement(Username);
       SOAPElement Password = sFactory.createElement("wsse:Password","",WS);
       Password.setValue(pWord);
       QName qname = new QName("","Type");
       Password.addAttribute(qname,"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText");
       UsernameToken.addChildElement(Password);
       SOAPElement wsseSecurity = sFactory.createElement("wsse:Security","",WS);
       wsseSecurity.addChildElement(UsernameToken);
      return wsseSecurity;

Similar Messages

  • APEX 3.0.1 fails to consume Web Services

    I am running APEX 3.0.1 in a 10.2.0.2 EE database on Windows XP.
    I am trying to get APEX to use a simple web service that I have created in BPEL. The web service functions perfectly in SoapUI.
    APEX seems to be using the response document rather than the request document when invoking the service.
    Here is the request generated by APEX:
    <inputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><ns1:Item xmlns:ns1="http://TargetNamespace.com/GetItemResponse">
    <ns1:SETID>SHARE</ns1:SETID>
    <ns1:ITEM_ID>810002</ns1:ITEM_ID>
    </ns1:Item>
    </part></inputVariable>
    Here is the request generated by SoapUI:
    <inputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><get:Item xmlns:get="http://TargetNamespace.com/GetItemRequest">
    <get:SETID>SHARE</get:SETID>
    <get:ITEM_ID>810002</get:ITEM_ID>
    </get:Item>
    </part></inputVariable>
    The primary difference is that APEX is referencing GetItemResponse rather than GetItemRequest.
    Here is the WSDL:
    <definitions name="ItemGet" targetNamespace="http://xmlns.oracle.com/ItemGet" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://xmlns.oracle.com/ItemGet" xmlns:ns1="http://TargetNamespace.com/GetItemRequest" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:ns2="http://TargetNamespace.com/GetItemResponse" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:client="http://xmlns.oracle.com/ItemGet">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://TargetNamespace.com/GetItemRequest" schemaLocation="GetItemRequest.xsd"/>
    </schema>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://TargetNamespace.com/GetItemResponse" schemaLocation="GetItemResponse.xsd"/>
    </schema>
    </types>
    <message name="ItemGetRequestMessage">
    <part name="payload" element="ns1:Item"/>
    </message>
    <message name="ItemGetResponseMessage">
    <part name="payload" element="ns2:Root-Element"/>
    </message>
    <portType name="ItemGet">
    <operation name="process">
    <input message="tns:ItemGetRequestMessage"/>
    <output message="tns:ItemGetResponseMessage"/>
    </operation>
    </portType>
    <binding name="ItemGetBinding" type="tns:ItemGet">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="process">
    <soap:operation style="document" soapAction="process"/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="ItemGet">
    <port name="ItemGetPort" binding="tns:ItemGetBinding">
    <soap:address location="http://xpvm.us.oracle.com:8888/orabpel/default/ItemGet/1.0"/>
    </port>
    </service>
    <plnk:partnerLinkType name="ItemGet">
    <plnk:role name="ItemGetProvider">
    <plnk:portType name="tns:ItemGet"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    As you can see from the WSDL, the input message is tns:ItemGetRequestMessage and the output is tns:ItemGetResponseMessage.
    The APEX design time environment is accurately recognizing ItemRequest for the input parameters and ItemResponse for the output parameters.
    It looks like a potential APEX bug.
    Anyone run into this? Anyone have any suggestions?
    Thanks!
    Kurt

    Kurt:
    It does look like a bug. I can offer the following workaround.
    Create a Manual Web reference as described here:
    http://download-west.oracle.com/docs/cd/B32472_01/doc/appdev.300/b32471/advnc.htm#BABCBBHJ
    section "Creating a Web Service Manually"
    based on the WSDL below, you would enter the following for URL and Action:
    URL: http://xpvm.us.oracle.com:8888/orabpel/default/ItemGet/1.0
    Action: process
    Also, enter a name for an APEX collection to store the response, such as GET_ITEM_RESPONSE.
    For the SOAP Envelope, paste in the one that works from SOAPUI or use BPEL Control to get the envelope. Instead of static values for the parameters you use #ITEM_NAME# substitutions. So if the page generated by the wizard was on page 1, it would look something like:
    <inputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><get:Item xmlns:get="http://TargetNamespace.com/GetItemRequest">
    <get:SETID>#P1_SETID#</get:SETID>
    <get:ITEM_ID>#P1_ITEM_ID#</get:ITEM_ID>
    </get:Item>
    </part></inputVariable>
    (with the proper SOAP Envelope wrapper around it)
    Now go to page 1 (assuming that was the page created by the wizard) and remove the current process of type Web service on that page. Add a new process of type Web service, choose Manual, and choose the manual one you created above.
    Follow the instructions in the section titled "Displaying Web Service Results in a Report" at the link above to create a report on the result.
    There is also an advanced tutorial using Manual Web references you may wish to review:
    http://download-west.oracle.com/docs/cd/B32472_01/doc/appdev.300/b32469/web_serv.htm#CHDEFEGH
    Hope that helps,
    Jason

  • Fail to create web service with user-defined data type using jwsc Ant task!

    Hello every body!
    I used JAXWS to create WSDL from a jws file.
    This is my jws:
    package ws;
    import javax.jws.WebService;
    import javax.jws.WebMethod;
    import ws.MyDataType;
    *@WebService*
    *public class MyWebService {*
    public MyWebService()
    *@WebMethod*
    public MyDataType MyWebMethod(MyDataType mdt)
    *// mdt.setS("I got it!");*
    return mdt;
    and this is my data type:
    package ws;
    *public class MyDataType {*
    String s;
    public MyDataType()
    *public String getS() {*
    return s;
    *public void setS(String s) {*
    this.s = s;
    and this is my Ant build.xml
    *<project default="all">*
    *<property name="weblogic.jar.classpath" value="D:/Projects/bea103/wlserver_10.3/server/lib"/>*
    *<taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask">*
    *<classpath>*
    *<path id="weblogic.classpath">*
    *<pathelement path="WEBLOGIC_HOME"/>*
    *<fileset dir="${weblogic.jar.classpath}">*
    *<include name="weblogic.jar"/>*
    *</fileset>*
    *</path>*
    *</classpath>*
    *</taskdef>*
    *<target name="all" depends="clean,build-service"/>*
    *<target name="clean">*
    *<delete dir="output"/>*
    *</target>*
    *<target name="build-service">*
    *<!--add jwsc and related tasks here -->*
    *<jwsc srcdir="" destdir="wsoutput">*
    *<jws file="MyWebService.java" type="JAXWS"/>*
    *</jwsc>*
    *</target>*
    *<!--<target name="deploy"> --><!--add wldeploy task here --><!-- </target>-->*
    *</project>*
    I run the Ant task but I get this error:
    Buildfile: build.xml
    clean:
    build-service:
    [jwsc] JWS: processing module /MyWebService
    [jwsc] Parsing source files
    [jwsc] Parsing source files
    [jwsc] 1 JWS files being processed for module /MyWebService
    *[jwsc] [JAM] Warning: failed to resolve class MyDataType*
    [jwsc] JWS: C:\Documents and Settings\samimi\IdeaProjects\SampleWebService\src\ws\MyWebService.java Validated.
    [jwsc] Processing 1 JAX-WS web services...
    *[jwsc] error: Could not get TypeDeclaration for: MyDataType in apt round: 1*..........
    BUILD FAILED
    C:\Documents and Settings\samimi\IdeaProjects\SampleWebService\src\ws\build.xml:
    19: weblogic.wsee.tools.WsBuildException: Error processing JAX-WS web services
    Please help me to solve this issue.
    Thank you,
    Mojir

    Thank u very much Jay SenSharma this was helpful
    and thank u sandeep_singh this is the answer,
    I find another answer too :
    adding my class files to the path remove the error:
    <project default="all">
    <property name="weblogic.jar.classpath" value="D:/Projects/bea103/wlserver_10.3/server/lib"/>
    <taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask">
    <classpath>
    <path id="my.path">
    <pathelement path="D:/Projects/bea103/jdk160_05/lib/tools.jar"/>
    <pathelement path="D:/Projects/bea103/wlserver_10.3/server/lib/weblogic.jar"/>
    *<pathelement path="D:/Projects/LifeInsurance Project Original/BusinessModule/classes/"/>* adding this line solved my problem.
    <pathelement path="${java.class.path}"/>
    </path>
    <path id="weblogic.classpath">
    <pathelement path="WEBLOGIC_HOME"/>
    <fileset dir="${weblogic.jar.classpath}">
    <include name="weblogic.jar"/>
    </fileset>
    </path>
    </classpath>
    </taskdef>
    <target name="all" depends="clean,build-service"/>
    <target name="clean">
    <delete dir="output"/>
    </target>
    <target name="build-service">
    <jwsc sourcepath="mytype" classpathref="my.path" debug="true" srcdir="" destdir="wsoutput">
    <jws file="NegotiationService.java" generatewsdl="true" type="JAXWS"/>
    </jwsc>
    </target>
    </project>
    Thank u very much,
    Mojir

  • Consuming Web Service - Proxy Generation Terminated

    Hello all,
    I have recently been exploring the capabilities of consuming Web Services from ABAP and have run into some issues. 
    When I generate the Client Proxy from different WSDL files, I am frequently getting these two errors:
    <i>Proxy generation terminated: "mixed content" not supported</i>
    <i>Proxy generation terminated: WSDL error (<extension> not supported)</i>
    Is this just a limitation of ABAP?  If I get these errors, is there any way to use the Web Service?
    Thanks in advance!

    Hi, had the same issue. try to rename the file to .xml ending.
    HTH; rgds, marco

  • Consuming web service in PI 7.3 and creating file

    Hi,
    I need to consume web service in PI 7.3 and create file from response. I have WSDL for the web service. Now confused about datatype/message type. Is there any document/note to follow?
    thanks,
    7Z

    I need to consume web service in PI 7.3 and create file from response. I have WSDL for the web service. Now confused about datatype/message type. Is there any document/note to follow?
    ==>
    Hi,
    There are 2 ways you can do this :-
    If your sender is a file and receiver is a webservice and you want to map the response back to the file then :-
    Sol 1 :- Async-Sync Bridge using RequesResponse Oneway bean
    Sender File channel ---> Soap Receiver Channel
    Soap Receiver Channel brings the response back to the File Receiver Channel.
    Now this File Receiver Channel should be called inside the Sender File Channel using the above bean.
    Data Type :
    Src - File struc to SOAP request (WSDL used as an external definition)(mapping 1)
    SOAP response(WSDL used as an external definition) to Tgt File Struc (mapping 2)
    Sol 2 :- Async Scenario
    Make a Sender File Channel --> use SOAP lookup channel (pass the request payload through the SOAP receiver channel) --> Map the response back to the File using File Receiver Channel.
    Data Type:
    Src - File struc to Tgt File Struc (mapping 1). Since you are passing the request payload through SOAP lookup in the UDF itself.
    ======================================================================

  • How to consume web service in jdev 10.1.3 and OAF 12.1.3

    I have a question regarding consuming web service in jdev 10.1.3. I have a WSDL url and want to generate java stub files from the wsdl. How do I do this using jdev?

    This is now contained in the PageDefinition file.
    1. Right-click on the Data Action, and then select Go to Page Definition
    2. Add an attribute to the <pageDefinition> tag called ControllerClass="MyPackage.ShowInfoAction"
    If you have more than 1 Data Action linked to a PageDefinition, then there is more work required.
    Hope this helps

  • Creating and consuming web service

    Hello Everyone,
    Please help me in creating a webservice which can be consumed in a button in Excel sheet i.e. I have to create a button in Excel sheet and on click of that button i have to consume a web service deployed in AS. Also I have to pass the data in Excel sheet to that web service.
    PS: This is just a business logic no other view or UI is required here.
    Thanks in advance.
    Regards
    Pranav

    Hi Pranav
    >2. I know I can download WSDL files from server using the test page. Downloaded zip file has these three wsdl files Config1_document.wsdl, Config1_TestVi_document.wsdl and main.wsdl. But which wsdl to use while consuming.
    Actually all the .wsdl files are part of single WSDL document which describes your Web service. Starting/root point here is main.wsdl which references two other .wsdl. You can access any time the root WSDL part by URL like
    "http://<host>:<port>/BcfRemoteCheck/Config1?wsdl&style=document&mode=standard".
    Hope you know where to see the WSDL URL (in Webservice Navigator or in Single Service Administration where you downloaded the ZIP).
    When you are consuming web-service you need all the parts. Usually when a Web-service is consumed the remote WSDL is used for generation of WS Client Proxy. But, the WSDL files can be also downloaded and used locally for generation of the WS Client Proxy.
    Sometimes the WSDL is not necessary at all for WS consuming on run-time. In the case it's used only on design-time just to know WS names, ports, operations, etc, for writing the code of WS Client.
    BR, Sergei

  • B1if and Consuming Web Services by PHP

    Hi Experts,
    We are in the process of integrating a custom made ecommerce  application with SAP B1. We had gone through the SDN Blog and found a Topic viz, Creating Web Services with B1if and Consuming by DotNet
    [http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/28162]
    We would like to get the same with that of PHP. Say, while pressing a button in PHP webpage,  I would have to add an  Item master in SAP B1 by using B1if
    Please help.
    Thanks in advance
    Arun

    Hi Cezary,
    How to consume a web service from php?
    I have a web service hosted on this route:
    http://<my-ip>:8080/B1iXcellerator/exec/soap/vP.0010000101.in_WCSX/com.sap.b1i.vplatform.runtime/INB_WS_CALL_SYNC_…
    I got it from, Scenario-control-trigger in B1if.
    I want to consume this service from php, is it possible?
    Jerry

  • WebCenter Sites : Consume Web Services and apply templates

    Hi,
    What is the best approach to consume Web Services or REST Service with Sites?
    The idea is to consume some eServices personalized for a connected user and apply different presentation templates for those services to add to Sites pages.
    Any Best practices here ?
    Regards
    Jo

    For consuming SOAP services inside a delivery template, there used to be the webservices:invoke tag but it was deprecated in version 7.6, and was generally not recommended to use anyway. There are no new tags for consuming SOAP or REST webservices, customers asking to do that are generally advised to reuse the existing libraries and write their client code in java, for example directly in an element/template or custom tag that you use in elements/templates. For performing simple REST queries you could use ics.ReadPage or httpclient.
    Sites (was CS) comes with jars for handling SOAP and REST services, such as saaj, xmlbeans, jaxrpc, and jersey. You can use these, but if you run into bugs or limitations with the provided versions be aware that upgrading these jars may break Sites. And similarly, upgrading Sites may change these jars and so break your client code.
    Phil

  • How to publish and consume web services in WAS 620?

    It appears that Web Service Creation Wizard is only available in WAS 640. We only have WAS 620 installed. Do any of you know what are the steps to publish ABAP function modules as web services, as well as to consume web services?
    Thanks,
    Angela

    Hi Angela,
       If you want to expose function modules as web service, you can generate WSDL by running BSP application 'webservicebrowser'. If you want to consume a web service then it is a bit difficult but possible. Look at sample programs (rsvsoap*).
    Also look at help document http://help.sap.com/saphelp_47x200/helpdata/en/94/f8c8a2e68811d6b2dc00508b5d5211/frameset.htm
    Regards,
    Sanjeev

  • Consume web service in ABAP proxy with SOAP header

    Hi Thomas ,
    I am trying to consume web service in  ABAP . I have followed the procedure from one of your web blog <a href="/people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap a Developer's Journal Part XIV - Consuming WebServices with ABAP</a> . (640 release).
    I need to pass SOAP header along with SOAP body. As you mentioned I have used if_wsprotocol_ws_header interface to pass header but it is still failing.
    Please see below code and please give some direction to fix the issue.
    1.Create ABAP proxy for WSDL (http://ws.strikeiron.com/SwanandMokashi/StockQuotes?WSDL). It has created structures only for SOAP body.
    2.Create Logical port
    3.Create following program to call proxy
    REPORT  zproxy.
    DATA: ref_stock TYPE REF TO zzco_stock_quotes_soap ,
          ws_header TYPE REF TO if_wsprotocol_ws_header,
          name TYPE string,
          namespace TYPE string.
    TRY.
        CREATE OBJECT ref_stock
      get WS_HEADER protocol
        ws_header ?= ref_stock->get_protocol('IF_WSPROTOCOL_WS_HEADER').
      set somehow header as iXML-DOM tree
        DATA: ixml TYPE REF TO if_ixml,
              xml_document TYPE REF TO if_ixml_document,
              xml_root TYPE REF TO if_ixml_element,
              xml_element TYPE REF TO if_ixml_element,
              xml_node TYPE REF TO if_ixml_node.
        DATA l_xstring        TYPE xstring.
        DATA l_string         TYPE string.
        FIELD-SYMBOLS <fs_xstring> TYPE xstring.
      Additional Header:
        CONCATENATE
    '<soap:Header>'
    '<s1:LicenseInfo xmlns:s1="http://ws.strikeiron.com">'
    '<s1:RegisteredUser>'
    '<s1:UserID>[email protected]</s1:UserID>'
    '<s1:Password>aaaaaaaa</s1:Password>'
    '</s1:RegisteredUser></s1:LicenseInfo>'
    '</soap:Header>' INTO l_string.
      convert to xstring
        l_xstring = cl_proxy_service=>cstring2xstring( l_string ).
        IF NOT l_string IS INITIAL.
        create iXML DOM document from XML xstring
          CALL FUNCTION 'SDIXML_XML_TO_DOM'
            EXPORTING
              xml           = l_xstring
            IMPORTING
              document      = xml_document
            EXCEPTIONS
              invalid_input = 1
              OTHERS        = 2.
          IF sy-subrc = 0 AND NOT xml_document IS INITIAL.
            xml_root = xml_document->get_root_element( ).
            xml_element ?= xml_root->get_first_child( ).
          add header element by element to SOAP header
            WHILE NOT xml_element IS INITIAL.
              name = xml_element->get_name( ).
              namespace = 'http://swanandmokashi.com' . "xml_element->get_namespace_uri( ).
              IF NOT xml_element IS INITIAL.
              ENDIF.
              ws_header->set_request_header(
                          name = name
                          namespace = namespace
                          dom = xml_element ).
              xml_element ?= xml_element->get_next( ).
            ENDWHILE.
          ENDIF.
        ENDIF.
      CATCH cx_ai_system_fault .
    ENDTRY.
    *Call soap body using abap proxy class.
    DATA: get_quotes TYPE zzget_quotes_soap_out .
    DATA: get_quotes1 TYPE zzget_quotes_soap_in .
    get_quotes1-quote_ticker = 'GE'.
    TRY.
        CALL METHOD ref_stock->get_stock_quotes
          EXPORTING
            get_quotes1 = get_quotes1
          IMPORTING
            get_quotes  = get_quotes.
      CATCH cx_ai_system_fault .
      CATCH cx_ai_application_fault .
    ENDTRY.
    4.It is throwing cx_ai_system_fault error.
    SOAP details:
    Input:
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:enc="http://schemas.xmlsoap.org/soap/encoding" >
    <soap:Header>
    <s1:LicenseInfo xmlns:s1="http://ws.strikeiron.com">
    <s1:RegisteredUser>
    <s1:UserID>[email protected]</s1:UserID>
    <s1:Password>aaaaaaaa</s1:Password>
    </s1:RegisteredUser>
    </s1:LicenseInfo>
    </soap:Header>
    <soap:Body>
    <tns:GetQuotes xmlns:tns="http://swanandmokashi.com">
    <tns:QuoteTicker>GE</tns:QuoteTicker>
    </tns:GetQuotes>
    </soap:Body>
    </soap:Envelope>
    Thanks,
    Kavitha.

    Hi ,
    Thank you for the response. Did you passed user email and password ([email protected] /aaaaaaaa) part of licenseinfo->resisteredUser along with Quoteticker GE in analyzer?
    <a href="http://www.strikeiron.com/Analyzer/OnlineAnalyzer.aspx?WSDL=http://ws.strikeiron.com/SwanandMokashi/StockQuotes?WSDL">ANALYZER</a>
    Thanks,
    Kavitha.

  • Consuming Web Services with ABAP - WSDL

    Hi All,
    I Want to consume web service in abap, i found lot of documents,Here i am having data in the internal table i need to pass
    it to wsdl file, The Web Service or Proxy generates a WSDL file. So this WSDL file can be consumed on ABAP Front and Encrypt the Data that is to be sent to the Banks.
    I found the input and output, Where i can find the method generated or we need to create it
    CALL METHOD io_clientproxy->XXXXXXXXXXXX
    please let me have your valuable ideas
    Thanks in advance,
    Arun.

    Hi Miguel,
    I have not heared about SPROXY, Here i found some code,which calls a web service method and where it is from.
    when i double click on my proxy it shows me some method.IF_PROXY_BASIS_INTERNAL~CREATE_FRAMEWORK
    this is the one web service method. and i meed to pass the internal table data to WSDL file.
    *-- create web service proxy class instance
    TRY.
        CREATE OBJECT io_clientproxy
          EXPORTING
            logical_port_name = 'LP4'.
      CATCH cx_ai_system_fault.
    ENDTRY.
    *-- call web service methods
    TRY.
        CALL METHOD io_clientproxy->get_airport_information_by_is
          EXPORTING
            input  = input
          IMPORTING
            output = output.
      CATCH cx_ai_system_fault.
      CATCH cx_ai_application_fault.
    ENDTRY.
    *-- text processing
    output_string = output-get_airport_information_by_is.
    REPLACE ALL OCCURRENCES OF
        '<' IN output_string WITH '<' .
    REPLACE ALL OCCURRENCES OF
    '>' IN output_string WITH '>' .
    REPLACE ALL OCCURRENCES OF
    'xmlns=' IN output_string WITH 'xmlns:xsl=' .
    *-- parsing
    TRY .
        CALL TRANSFORMATION ('Y_AIRPORT_XML2ABAP')
                SOURCE XML output_string
                RESULT     outtab = outtab.
      CATCH cx_xslt_exception INTO xslt_err.
        DATA: s TYPE string.
        s = xslt_err->get_text( ).
        WRITE: ': ', s.
        STOP.
    ENDTRY .
    Regards,
    Arun.

  • Problem when consuming web service on WIndows authentication applcation

    Hi,
    I am having a tough time in consuming web services on a
    Windows authentication IIS server.
    In one of my application I have created web services and
    consuming those web services from my another application.
    If I turned off the Windows authentication everything works
    fine, but If I turned on the Windows authentication web services
    stop working.
    Has anyone encountered such error while working with web
    services on Windows authentication server.
    Attach Code
    Could not perform web service invocation "funGetCustomer".
    Here is the fault returned when invoking the web service
    operation:
    AxisFault
    faultCode: {
    http://xml.apache.org/axis/}HTTP
    faultSubcode:
    faultString: (401)Unauthorized
    faultActor:
    faultNode:
    faultDetail:
    {}:return code: 401
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
    http://www.w3.org/TR/html4/strict.dtd">
    <HTML><HEAD><TITLE>You are not authorized
    to view this page</TITLE>
    <META HTTP-EQUIV="Content-Type" Content="text/html;
    charset=Windows-1252">
    <STYLE type="text/css">
    BODY { font: 8pt/12pt verdana }
    H1 { font: 13pt/15pt verdana }
    H2 { font: 8pt/12pt verdana }
    A:link { color: red }
    A:visited { color: maroon }
    </STYLE>
    </HEAD><BODY><TABLE width=500 border=0
    cellspacing=10><TR><TD>
    <h1>You are not authorized to view this page</h1>
    You do not have permission to view this directory or page
    using the credentials that you supplied because your Web browser is
    sending a WWW-Authenticate header fi...

    You could try switching the HTTP transport provided in the
    Apache Axis embedded in ColdFusion to "CommonsHTTPSender".
    See this blog post:
    http://tjordahl.blogspot.com/2007/03/apache-axis-and-commons-httpclient.html

  • UCCX - Consuming Web Services

    Hi All,
    I am looking for some advice in regards to consuming web services via UCCX scripting. In the past i have been doing so successfully in our environment by using document steps and Xpath expressions for both SOAP and REST web services that were configured to allow an HTTP GET request (tomcat running on apache server to expose public methods written in Java).
    Our company is in the midst of a Microsoft Dynamics 2012 (r2)  implementation and I have the task of establishing communication with AX in order to pass information back and forth. Our consultants with dynamics have setup a test web service using AIF, but it seems that these services require authentication. Currently the test web service is using NTLM authentication and exposed via SOAP. Apparently it is not possible to use HTTP GET for these web services.
    This means i had to write java code in Set steps to communicate with the SOAP services. I was able to successfully do this for some of our own web services using SOAP. however i am having problems with the AX test web service due to the authentication. (Thanks to Gergely Szabo, as i used some of his code found here: https://supportforums.cisco.com/document/97736/uccx-8x-really-simple-soap-client-no-custom-jar )
    I am hoping someone has some experience with having consumed AIF web services via Java or at least Java written within a UCCX script. Or if someone has been able to implement authentication and can provide some details for how that works? I don't even know if i can authenticate via NTLM from UCCX scripts due to it being a windows authentication protocol and not linux based.
    Any thoughts or ideas would be appreciated!
    Thanks,
    Kevin.

    Hi,
    Thus far I have been unsuccessful in my attempts to communicate with this particular web service. The consults did create another service using Basic HTTP Auth and I was able to consume and use the service using SOAPUI just fine.
    However, my soapResponseString code (small tweak of Gergely's code) is not working. After 2-3 minutes of sitting on that step in the CRS Editor my stacktrace exception is thrown and shows "Connection timed out". This is way past the time for the 5000ms read timeout, so I imagine the initial communication is successful but then eventually times out due to not returning a response?
    I tried to mimic the headers SOAPUI uses from it's HTTP Log, hence the number of urlCon.setRequestProperty lines..
    CODE for Set soapResponseString below:
    // create a ByteArrayOutputStream - this is actually a buffer
    // we are going to use to store the response coming from the SOAP server
    java.io.ByteArrayOutputStream baos = new java.io.ByteArrayOutputStream();
    // this is quite unnecessary: assigning the value of the soapRequest (still holding our XML document)
    // to another variable, named content, type String; but anyway, it's just cleaner
    String content = soapRequest;
    // specify a timeout - 5000 milliseconds - if the web server does not start sending back
    // anything within this timeframe, an exception will be raised
    int readTimeout = 5000;
    try {
    // a new URL, which is the soapServiceEndpoint variable value (http://ip:port/ etc):
         java.net.URL url = new java.net.URL(soapServiceEndpoint);
    // creating a HTTP connection to the above URL:
         java.net.HttpURLConnection urlCon = (java.net.HttpURLConnection) url.openConnection();
    // setting some important header parameters, first of all, content length, this is most likely expected
    // by the SOAP server
         urlCon.setFixedLengthStreamingMode(content.length());
    // setting the timeout:
         urlCon.setReadTimeout(readTimeout);
    // we tell Java we will do input (in other words, we will read):
         urlCon.setDoInput (true);
    // we tell Java we will do output (in other words, we will send):
         urlCon.setDoOutput (true);
    // we tell Java not to cache:
         urlCon.setUseCaches (false);
    // we are using HTTP POST
         urlCon.setRequestMethod("POST");
    // finally, we set the Content-Type header,
    // this way we are telling the SOAP server we are sending an XML, using the UTF-8 charset
         urlCon.setRequestProperty("Content-Type","text/xml;charset=UTF-8");
    // here we are sending our Basic Auth - authStringEnc is a base64 encoded user:pass credential that's initialized in a previous step
      urlCon.setRequestProperty("Authorization","Basic " + authStringEnc);
    //set some other header information for the request required by the AIF Web Service 
      urlCon.setRequestProperty("SOAPAction","http://tempuri.org/myService/getSiteId");
      urlCon.setRequestProperty("Host", "myServer.myDomain.com:8080");
      urlCon.setRequestProperty("Connection","Keep-Alive");
      urlCon.setRequestProperty("User-Agent","Java/1.6.0_29");
      urlCon.setRequestProperty("Accept-Encoding","gzip,deflate");
    // opening an OutputStream (this is a one-way channel towards the SOAP server:
         java.io.DataOutputStream output = new java.io.DataOutputStream(urlCon.getOutputStream());
    // we write the contents of the content variable (= soapRequest = XML document):
         output.writeBytes(content);
    // telling Java to flush "speed up!" and then close the stream:
         output.flush();
         output.close();
    // now getting the InputStream (getting a one way channel coming from the SOAP server):
         java.io.DataInputStream input = new java.io.DataInputStream(urlCon.getInputStream());
    // buffered read from the InputStream, buffer size 4Kilobytes (= 4096 bytes):
    // and the buffer is always written to the other buffer, named baos, that we specified
    // on the first line of this block of code
         int bufSize = 4096; // buffer size, bytes
         byte[] bytesRead = new byte[bufSize];
         int bytesReadLength = 0;
         while(( bytesReadLength = input.read( bytesRead )) > 0 ) {
             baos.write(bytesRead,0,bytesReadLength);
         } //while block ends here
    // closing the InputStream:
         input.close();
    // closing the baos buffer
         baos.close();
    } catch (Exception e) {
    // again, if an error occurs, let's just send the stack trace to stdout (stdout.log)
    // and then return null or can we can return e.getMessage() to see the exception caught inside the script
        e.printStackTrace();
     return e.getMessage();
        //return null;
    } // try..catch block ends here
    // construct a new String, and return that to the CRS script:
    return new String(baos.toByteArray());
    } // closure ends here

  • Error consuming Web service from an ABAP Program

    Hello guys,
    I'm trying to consume a Web Service that is exposed in the internet. The conecction to the Web Service its via SSL.
    I'm having a problem at the moment I call the web service from my abap program.  But I'm able to test the same web service, from the SE80 tx with out trouble.
    I have identify that there is a difference in the SOAP envelope, that its received in the Web service, when I call it from the test enviorment and when I call it from the program. 
    This is how it is received from the TEST tool (a succesfull call of th WS) :
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Header><n0:Trace xmlns:n0="http://www.sap.com/webas/630/soap/features/runtime/tracing/"><TraceLevel xmlns="http://www.sap.com/webas/630/soap/features/runtime/tracing/">Error</TraceLevel></n0:Trace></soap-env:Header><soap-env:Body><nr1:putXMLDocument xmlns:nr1="http://bel.bci.cl/WsBEL/services/Carga"><body>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;&lt;Mensaje&gt;&lt;RutEmpresa&gt;&lt;Numero&gt;76555400&lt;/Numero&gt;&lt;Digito&gt;4&lt;/Digito&gt;&lt;/RutEmpresa&gt;&lt;RutUsuario&gt;&lt;Numero&gt;12307972&lt;/Numero&gt;&lt;Digito&gt;8&lt;/Digito&gt;&lt;/RutUsuario&gt;&lt;Convenio&gt;58422&lt;/Convenio&gt;&lt;Pin&gt;aro79728&lt;/Pin&gt;&lt;Archivo&gt;&lt;Tipo&gt;PPR&lt;/Tipo&gt;&lt;Plantilla&gt;2142970592&lt;/Plantilla&gt;&lt;Nombre&gt;cargatest174.txt&lt;/Nombre&gt;&lt;Cuerpo&gt;&lt;![CDATA[G126919727     JORGE CRISTIAN VARGAS ROMERO                                                     0000VVC01600000000000000000000245FAC0000000089900032000021030000010000000000190000   2910200714082008Boletas honorarios|]]&gt;&lt;/Cuerpo&gt;&lt;/Archivo&gt;&lt;Fecha&gt;20080814&lt;/Fecha&gt;&lt;/Mensaje&gt;</body></nr1:putXMLDocument></soap-env:Body></soap-env:Envelope>
    And this is how  it is received when I consume the web service from the ABAP program.
    <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Header><n0:Trace xmlns:n0="http://www.sap.com/webas/630/soap/features/runtime/tracing/"><TraceLevel xmlns="http://www.sap.com/webas/630/soap/features/runtime/tracing/">Error</TraceLevel></n0:Trace></soap-env:Header><soap-env:Body><nr1:putXMLDocument xmlns:nr1="http://bel.bci.cl/WsBEL/services/Carga"><body>&lt;?xml version="1.0" encoding="utf-8" ?&gt;&lt;nr1:putXMLDocument xmlns:nr1="http://bel.bci.cl/WsBEL/services/Carga"&gt;&lt;body&gt;&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;&lt;Mensaje&gt;&lt;RutEmpresa&gt;&lt;Numero&gt;76555400&lt;/Numero&gt;&lt;Digito&gt;4&lt;/Digito&gt;&lt;/RutEmpresa&gt;&lt;RutUsuario&gt;&lt;Numero&gt;12307972&lt;/Numero&gt;&lt;Digito&gt;8&lt;/Digito&gt;&lt;/RutUsuario&gt;&lt;Convenio&gt;58422&lt;/Convenio&gt;&lt;Pin&gt;aro79728&lt;/Pin&gt;&lt;Archivo&gt;&lt;Tipo&gt;PPR&lt;/Tipo&gt;&lt;Plantilla&gt;2142970592&lt;/Plantilla&gt;&lt;Nombre&gt;cargatest174.txt&lt;/Nombre&gt;&lt;Cuerpo&gt;&lt;![CDATA[G126919727 JORGE CRISTIAN VARGAS ROMERO 0000VVC01600000000000000000000245FAC0000000089900032000021030000010000000000190000 2910200714082008Boletas honorarios|]]&gt;&lt;/Cuerpo&gt;&lt;/Archivo&gt;&lt;Fecha&gt;20080814&lt;/Fecha&gt;&lt;/Mensaje&gt;&lt;/body&gt;&lt;/nr1:putXMLDocument&gt;</body></nr1:putXMLDocument></soap-env:Body></soap-env:Envelope>
    As you can see, it is generating a nr1:putXMLDocument tag, that it should not go there.
    Why do you think that this situation is happening? Please guys, this is very important, and need your help.  Thanks in advance.
    Samuel.

    BSP a Developer's Journal Part XIV - Consuming WebServices with ABAP
    Calling WebServices from ABAP via HTTPS
    Consuming Web Service from ABAP by Durairaj Athavan Raja
    Search on SDN wiki, and you will find above mentioned links.

Maybe you are looking for

  • Custom page layouts are not getting displayed in ribbon

    Hi, I have created a custom page layout under welcome category. This is getting displayed in pages library while creating a page and also in page layout option from site settings which is fine. But when a page is in edit mode if we click page->page l

  • Updating ipod touch??

    ive been reading on all these websites that updating my ipod touch will delete all my apps and songs i paid for my songs and my apps and i dont want them to be deleted! do i get them back? i know about backing up but i read on the apple website that

  • IDoc Monitoring in NWA: PI Perspective

    Hi I am a fresher PI Developer working on Netweaver 7.3. I came across IDoc monitoring tab in NWA, but it doesn't show the IDoc's processed within the last few days. Apart from this, there is also a IDoc metadata tab in IDoc monitoring in NWA. I coul

  • Is there a Numbers equivalent to Excel's "Text to Columns"?

    I am new to Numbers 09. In Excel I often need to take large amounts of ASCII text data, with hundreds or even thousands of line, paste the data into Column A, then use the "Text to Columns" utility to parse the data into separate columns for further

  • Validation on Execution of workitem

    Hi all,        I have  a scenario in which  a workitem with expense value 7000$ has  gone  for approval to manager1 in his UWL. Manager1 can approve expense upto 10000$ But when this  workitem  was  created Manager1 has  gone  on leave and  he has  s