"Enhanced" Web Service

Hello,
I need some help concerning a topic called "enhanced web service" in some publications (eg. [http://www.sap-press.de/download/dateien/2221/sappress_netweaver_process_integration.pdf] ). What is meant by this term is a web service communication via an integration server. In the linked publication the following steps to define an enhanced Web service are listed:
1. To be able to generate a WSDL description for the caller, you need
a service interface. This can be either an outbound or an inbound
service interface. The service interface isnu2019t necessarily required for
further configuration because it describes only the signature for the
caller.
2. In the Integration Builder for configuration, follow the menu path
Tools u2022 Display WSDL. You create a WSDL description by entering
the following details in the wizard:
a) The address of the Integration Server or another Web server that is
supposed to receive the Web service call.
b) The service interface from the first step to publish the call signature
via the WSDL document.
c) Details about the sender of the SOAP message (party, service, and
outbound interface). When the Integration Server receives the
SOAP message, it needs these details to evaluate the configuration
data. You enter the information about the sender in logical routing
or operation mapping and in the collaboration agreements.
3. The caller can use the generated WSDL description to generate a
consumer proxy and then send the SOAP message to the Integration
Server by using the Web service runtime. You configure the receiver
for the SOAP message on the Integration Server.
I am not sure what to do in step 2 c). Can someone elaborate?
Kind Regards
Felix

>>I am not sure what to do in step 2 c). Can someone elaborate?
You need to input the following
Dont worry about party ignore it.
service  -  sender business component or business system  example:  BC_TEST  or BS_test
outbound interface - sender service interface   example: SI _xxxxx_outbound
Sender interface namespace   example : http://xxxxxx

Similar Messages

  • Enhancing web service tool to have further business objects and roots

    Hi Gurus,
    is it possible to enhance the web service tool in CRM 6.0, to have further business objects and root objects during the creation of a web service.
    Currently, there are specific entries, but I want to have additional data in here to create a customer specific word template.
    I have found out some tables, but I really do not know how to enhance them and if this is the correct way of adding additional business objects in the web service tool.
    Mentioned tables are CRMV_WS_METHODS and CRMV_WS_OBJ_REL.
    Has someone of you already did this? Helpful answers will be awarded.
    ThanX
      AleX

    Does nobody have an idea? According to help.sap, only these objects are web service enabled:
    -Business Transaction
    -Business Partner
    -Campaigns
    -Case
    -Counter
    -Installed Base
    -Marketing Segments
    -Marketing Attributes
    -Product
    source: http://help.sap.com/saphelp_crm60/helpdata/en/71/365da2ab81488c8fc9b82fd8eb6f0f/content.htm
    But what about other components, such as BuAg (Business Agreement) or ISUMD (IS-U Master Data and further data from the ERP system). These components are in the GenIL, e.g.
    BUAG with implementation class CL_CRM_BUAG_IL1 or
    ISUMD with implementation class CL_CRM_ISU_IL_MD
    Is it necessary to use the Web Service Consumption Tool for creating BOL Objects, although the BUAG/ISUMD are already available in CRM?
    If so, what must be exactly done with this Tool. Does anyone have experiences here and can provide me further information?
    Thanx and regards
    Alex
    Edited by: Alexandro St. Torro on Nov 11, 2008 9:41 AM

  • XML scheme and Web services enhancement for MS Word integration in CRM 2007

    Hi,
    I am trying to use the Template designer and the web services tool in order to create a MS Word template for the quotation.
    We have created a new web service, using the Web Service Tool
    (transaction BSP_WD_CMPWB, type WS_DESIGN_TOOL). I can use this web service when creating a quotation word template and everything works fine.
    I need to enhance the web service with some custom fields and logic. I found the blog:
    Web-services enhancement for MS Word integration in CRM 2007
    /people/community.user/blog/2008/11/18/web-services-enhancement-for-ms-word-integration-in-crm-2007
    The blog describe how to enhance the web service, extend the output
    structure etc.
    We have done all the steps in the blog, and everything looks fine. When
    we test the web service, using the Web Service Navigator, all the new
    fields we added to the output structure are displayed. The WSDL
    document also looks fine, displayed from the Web Service
    Administration.
    The problem occur when try to create the word template using the
    Template Designer. The XML scheme is not displayed in the word
    document. This only happens if we use an enhanced web service.
    Anyone familiar with this issue?
    Kind regards,
    Johan Wigert

    Hi,
    You may have to upgrade your MS word 2003 to MS Word 2007.
    Before you do that please opening View > toolbars > Task Pane and check if you can get XML Schema from the web service.
    Regards,
    Sandeep Chavan

  • Web services websphere 5.1   encoding character

    Hi
    i generate a client using the command websphere tool WSDL2java.
    Now i would like to change the character encoding ; I want to change to UTF-8.
    Any idea ?
    thanks
    best regards

    Hi Paul,
    Earlier in this list, Tom Zaranek asked the same question. If you search back there
    is a good thread that may be helpful.
    In general, having the latest release of an emerging technology is recommended.
    HTHs,
    Bruce
    Paul Martin wrote:
    How well do web services work with WLS 5.1? Are there any pitfalls that would be
    encountered. Would it be wiser to upgrade to a more recent version of WLS to use
    enhanced web services features?

  • Can we use receiver enhancement feature for a web service scenario?

    Hi Experts,
    We have to send across an invoice to web service enabled legacy system from ECC.
    ECC>ABAP Proxy>SAP PI>SOAP Adapter>Legacy System1
    ECC>ABAP Proxy>SAP PI>SOAP Adapter>Legacy System2
    Requirement is like if the invoice number starts with 1A, it should go to Legacy System1 & if the invoice number starts with 2A, it should go to Legacy System2.
    Can we do it in one single scenario using receiver enhancement and if yes How?
    Regards
    Nidhi Kukreja

    You can make use of the XPATH function starts-with(string1,string2) and customize your condition as shown in this blog:
    /people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination
    Update:
    It can even be done without using any XPATH function.....just make use of the option Contains Pattern from the dropdown available for the Middle Operand....right operand will be 1A*
    Regards,
    Abhishek.
    Edited by: abhishek salvi on Feb 3, 2010 1:00 PM

  • Enhance BOL with Z-fields for Web Service

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

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

  • Web-services enhancement for MS Word

    Hi,
    I have done all the steps described in the blog /people/community.user/blog/2008/11/18/web-services-enhancement-for-ms-word-integration-in-crm-2007 about Web-services enhancement for MS Word,  but the last step I did not complete successfully.
    When I start the template designer no offer structure OUTPUT of web service, the template is blank.
    The funny thing is that when I delete the APPEND structure with fields Z, and I press Check button and activate the web service again I have no problem, I start the template designer and reappear standard fields.
    Anyone have any idea what happens?
    Thanks and regards

    Hi,
    You may have to upgrade your MS word 2003 to MS Word 2007.
    Before you do that please opening View > toolbars > Task Pane and check if you can get XML Schema from the web service.
    Regards,
    Sandeep Chavan

  • Re: Enhance standard TM Web service configured through WSRM

    Hi experts,
    I am trying to build an Order Integration scenario between TM & ECC. Unfortunately there is no SAP-PI available in our system landscape, so i have to use WS/RM.
    There are some enhancements to be done in the standard Webservice(WS). Afaik we need ESR for the enhancement. Since there is no ESR configured in the WS/RM scenario, how do i enhance the WS?
    Does anyone have an experience in enhancing std. WS in WS/RM?
    BR,
    Suhas

    Dear Suhas,
    You have not mentioned which version of TM you are working on.
    If you are working on TM 9.1, check the below link for available Web services for TM ERP order integration.
    TM_ERPOrderIntegration - Enterprise Services and ESR Content - SAP Library
    If you want to check these services for availability, go to SPROXY transaction and look for the required.
    Let me know if you need more help.
    Thanks,
    Bharath.

  • Installing collab 4.1 sp2 - Web services enhancement

    All,
    I have been reading through the install guide for collab and one of the pre install steps is to install Web services enhancement 2.0. But if I do a search on www.microsoft.com for Web Services Enhancement all I find is Web Services Enhancement 3.0. Can I install 3 instead of 2? Has anybody done this? I will be doing this install on Monday. Any help would be appreciated.
    Thanks,
    Berney

    Hi Dave,
    Please check the below link,
    How to create Xcelsius Dashboard based of BI Web Service ( BIWS )
    Using Webservice in Dashboard
    Webservices in Dashboard - Issue
    Also change your original link here and try to load
    (sample link)
    From:
    http://BOE:8080/dswsbobje/qaawsservice/bisw?def=1&cuid=xxxxxxxxxx
    To:
    http://BOE:8080/dswsbobje/qaawsservice/bisw?wsdl=1&cuid=xxxxxxxxxx
    or else can you post your url here.
    Hope this helps.
    --SumanT

  • Q: How to expose EEWB custom enhancements via Web Service Tool

    How do you expose custom enhancements so that when Selecting Attributes (step 2) of web service tool, you will be able view your custom enhancements?  We are able to see the our enhancements via GENIL_MODEL_BROWSER.  However, the enhancements are not carried forward to the Web Service Tool, any pointer or help would be rewarded with points.

    Hi Michael,
    I have a similar requirement, just wanna know how did you solved this?
    Could you please share your solution?
    Thanks...
    //Abhishek

  • Unable to call a web service from BPEL Project

    I am running my BPEL PM on Windows XP SP3. The platform is weblogic 9.2, SOA 10.1.3.1.
    I created a simple BPEL project to call a web service and when I run the project from BPELConsole I getting the following error:
    exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Bad response: 407 Proxy Authentication Required ( The ISA Server requires authorization to fulfill the request. Access to the Web Proxy filter is denied. )
    I am able to call this web service from soapUI client.
    Any help or hint is appreciated.
    Thanks

    I have had this issue before when calling a .NET service, it was firewall related. I didn't actually make the fix so I can't tell you exactly how it was fixed on the server. I hope this info makes sense as this this the info I got from the IT boys
    I’ve install this tool on your computer:
    http://www.microsoft.com/downloads/details.aspx?FamilyID=05C2C932-B15A-4990-B525-66380743DA89&displaylang=en
    which does that:
    Firewall Client for ISA Server can be optionally installed on client computers protected by Microsoft ISA Server. Firewall Client for ISA Server provides enhanced security, application support, and access control for client computers. It provides authentication for Winsock applications that use TCP and UDP, supports complex secondary protocols, and supplies user and application information to the ISA Server logs.
    When a client computer running Firewall Client for ISA Server makes a request, the destination is evaluated by the Firewall Client software, and external requests are directed to the ISA Server computer for handling. No specific routing infrastructure is required. Firewall Client sends user information transparently with each request, enabling you to create a firewall policy on the ISA Server computer with rules that use the authentication credentials presented by the client. ISA Server allows you to configure automatic discovery for Firewall client computers, using a WPAD entry in DNS or DHCP to obtain correct Web proxy settings for clients, depending on their location.
    and I’ve added a exception in IE to the tools-lan settings-advanced-exceptions to be creditworks.* Did this by modifying the GPO that applies to your account, so all the users in National Office should have that exception.
    hope you can use this.
    cheers
    James

  • Access a web service from pl/sql

    I am trying to access a web service from pl/sql. I have downloaded the code from
    http://www.oracle.com/technology/tech/webservices/htdocs/samples/dbwebservice/DBWebServices_PLSQL.html
    But when I try to execute the sql, I am getting the following error:
    SQL> @local.sql
    Package created.
    Package body created.
    No errors.
    BEGIN dbms_output.put_line(time_service.get_local_time('94065')); END;
    ERROR at line 1:
    ORA-29273: HTTP request failed
    ORA-06512: at "SYS.UTL_HTTP", line 1022
    ORA-12545: Connect failed because target host or object does not exist
    ORA-06512: at "WEB.DEMO_SOAP", line 71
    ORA-06512: at "WEB.TIME_SERVICE", line 15
    ORA-06512: at line 1
    It is failing at:
    resp := demo_soap.invoke(req,
    'http://www.ripedev.com/webservices/LocalTime.asmx',
    'http://ripedev.com/xsd/ZipCodeResults.xsd/LocalTimeByZipCode');
    But in the examples that I got from downloading source code, site used was:
    'http://www.alethea.net/webservices/LocalTime.asmx',
    'http://www.alethea.net/webservices/LocalTimeByZipCode');
    This site was not accessible. So I changed to the working site as follows, but still I
    am getting the above error.
    But I can access this site, if I type in the above address in the address bar of IE.
    Can any body help?
    I have oracle9i client installed on my machine and able to connect to server thru toad and sql plus.
    or IF any body refers me to a good website for the topic of "using webservies from pl/sql" that would be great too!

    Here is the complete code:
    time_service:
    CREATE OR REPLACE PACKAGE time_service AS
    FUNCTION get_local_time(zipcode IN VARCHAR2) RETURN VARCHAR2;
    END;
    CREATE OR REPLACE PACKAGE BODY time_service AS
    -- Location of Web service definition
    -- http://www.alethea.net/webservices/LocalTime.asmx?WSDL
    -- http://www.ripedev.com/webservices/LocalTime.asmx?WSDL
    -- http://www.xmethods.com/sd/2001/CurrencyExchangeService.wsdl
    --'http://ripedev.com/xsd/ZipCodeResults.xsd/LocalTimeByZipCode style=document');
    FUNCTION get_local_time(zipcode IN VARCHAR2) RETURN VARCHAR2 IS
    req demo_soap.request;
    resp demo_soap.response;
    BEGIN
    dbms_output.put_line('before new request..');
    req := demo_soap.new_request('LocalTimeByZipCode',
    'xmlns="http://ripedev.com/xsd/ZipCodeResults.xsd"');
    dbms_output.put_line('before add param..');
    demo_soap.add_parameter(req, 'ZipCode', 'xsd:string', zipcode);
    dbms_output.put_line('before invoke..');
    resp := demo_soap.invoke(req,
    'http://www.ripedev.com/webservices/LocalTime.asmx',
    'http://ripedev.com/xsd/ZipCodeResults.xsd/LocalTimeByZipCode');
    dbms_output.put_line('before return..');
    RETURN demo_soap.get_return_value(resp, 'LocalTimeByZipCodeResult',
    'xmlns="http://www.ripedev.com/webservices/"');
    END;
    BEGIN
    dbms_output.put_line('inside main time_service..');
    END;
    show errors
    SET serveroutput ON
    exec dbms_output.put_line(time_service.get_local_time('94065'));
    Here is demo_soap.sql:
    Rem
    Rem $Header: soapdemo.sql 21-may-2002.13:48:17 rpang Exp $
    Rem
    Rem soapdemo.sql
    Rem
    Rem Copyright (c) 2002, Oracle Corporation. All rights reserved.
    Rem
    Rem NAME
    Rem soapdemo.sql - <one-line expansion of the name>
    Rem
    Rem DESCRIPTION
    Rem A PL/SQL demo package for making SOAP RPC calls.
    Rem
    Rem NOTES
    Rem This demo package can only be used in oracle 9ir2. It utilizes 9iR2's
    Rem XDB (XMLType and HttpUriType) and 9iR1's enhancements to UTL_HTTP to
    Rem make SOAP RPC calls.
    Rem
    Rem MODIFIED (MM/DD/YY)
    Rem rpang 05/21/02 - created
    Rem
    Rem A PL/SQL demo package that makes a SOAP RPC calls.
    Rem
    CREATE OR REPLACE PACKAGE demo_soap AS
    /* A type to represent a SOAP RPC request */
    TYPE request IS RECORD (
    method VARCHAR2(256),
    namespace VARCHAR2(256),
    body VARCHAR2(32767));
    /* A type to represent a SOAP RPC response */
    TYPE response IS RECORD (
    doc xmltype);
    * Create a new SOAP RPC request.
    FUNCTION new_request(method IN VARCHAR2,
    namespace IN VARCHAR2)
    RETURN request;
    * Add a simple parameter to the SOAP RPC request.
    PROCEDURE add_parameter(req IN OUT NOCOPY request,
    name IN VARCHAR2,
    type IN VARCHAR2,
    value IN VARCHAR2);
    * Make the SOAP RPC call.
    FUNCTION invoke(req IN OUT NOCOPY request,
    url IN VARCHAR2,
    action IN VARCHAR2) RETURN response;
    * Retrieve the sipmle return value of the SOAP RPC call.
    FUNCTION get_return_value(resp IN OUT NOCOPY response,
    name IN VARCHAR2,
    namespace IN VARCHAR2) RETURN VARCHAR2;
    END;
    show errors
    CREATE OR REPLACE PACKAGE BODY demo_soap AS
    FUNCTION new_request(method IN VARCHAR2,
    namespace IN VARCHAR2)
    RETURN request AS
    req request;
    BEGIN
    req.method := method;
    req.namespace := namespace;
    RETURN req;
    END;
    PROCEDURE add_parameter(req IN OUT NOCOPY request,
    name IN VARCHAR2,
    type IN VARCHAR2,
    value IN VARCHAR2) AS
    BEGIN
    req.body := req.body ||
    '<'||name||' xsi:type="'||type||'">'||value||'</'||name||'>';
    END;
    PROCEDURE generate_envelope(req IN OUT NOCOPY request,
                   env IN OUT NOCOPY VARCHAR2) AS
    BEGIN
    env := '<SOAP-ENV:Envelope
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/1999/XMLSchema">
    <SOAP-ENV:Body><'||req.method||' '||req.namespace||'
    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">'||
    req.body||'</'||req.method||'></SOAP-ENV:Body></SOAP-ENV:Envelope>';
    END;
    PROCEDURE show_envelope(env IN VARCHAR2) AS
    i pls_integer;
    len pls_integer;
    BEGIN
    i := 1; len := length(env);
    WHILE (i <= len) LOOP
    dbms_output.put_line(substr(env, i, 60));
    i := i + 60;
    END LOOP;
    END;
    PROCEDURE check_fault(resp IN OUT NOCOPY response) AS
    fault_node xmltype;
    fault_code VARCHAR2(256);
    fault_string VARCHAR2(32767);
    BEGIN
    fault_node := resp.doc.extract('/soap:Fault',
    'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/');
    IF (fault_node IS NOT NULL) THEN
    fault_code := fault_node.extract('/soap:Fault/faultcode/child::text()',
         'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
    fault_string := fault_node.extract('/soap:Fault/faultstring/child::text()',
         'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
    raise_application_error(-20000, fault_code || ' - ' || fault_string);
    END IF;
    END;
    FUNCTION invoke(req IN OUT NOCOPY request,
    url IN VARCHAR2,
    action IN VARCHAR2) RETURN response AS
    env VARCHAR2(32767);
    http_req utl_http.req;
    http_resp utl_http.resp;
    resp response;
    BEGIN
    generate_envelope(req, env);
    -- show_envelope(env);
    http_req := utl_http.begin_request(url, 'POST','HTTP/1.0');
    utl_http.set_header(http_req, 'Content-Type', 'text/xml');
    utl_http.set_header(http_req, 'Content-Length', length(env));
    utl_http.set_header(http_req, 'SOAPAction', action);
    utl_http.write_text(http_req, env);
    http_resp := utl_http.get_response(http_req);
    utl_http.read_text(http_resp, env);
    utl_http.end_response(http_resp);
    resp.doc := xmltype.createxml(env);
    resp.doc := resp.doc.extract('/soap:Envelope/soap:Body/child::node()',
    'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"');
    -- show_envelope(resp.doc.getstringval());
    check_fault(resp);
    RETURN resp;
    END;
    FUNCTION get_return_value(resp IN OUT NOCOPY response,
    name IN VARCHAR2,
    namespace IN VARCHAR2) RETURN VARCHAR2 AS
    BEGIN
    RETURN resp.doc.extract('//'||name||'/child::text()',
    namespace).getstringval();
    END;
    END;
    show errors

  • Unable to call a Web Services via UTL_DBWS

    Hi all,
    I create with Apex 3.1 a web service (it works)
    Now i need to use the UTL_DBWS package to access a web services from PL/SQL
    So i get the Name 'WebServiceDemo', the URL 'http://my_url' and the Target Namespace 'http://my_target'
    from the web service reference to build PL/SQL process
    The operation 'Login' has two input parameters (username as string, password as string - nullable)
    and one ouput parameter (sessionId as string)
    When i run the following source code, i get an error
    ORA-29532: javax.xml.rpc.soap.SOAPFaultException: Well-formedness violation
    Oracle 10.2.0.4
    What am i doing wrong?
    Any help is appreciated,
    Thanks
    Grégory
    Here is my code :
    DECLARE
       service_            UTL_DBWS.service;
       call_               UTL_DBWS.CALL;
       service_qname       UTL_DBWS.qname;
       port_qname          UTL_DBWS.qname;
       operation_qname     UTL_DBWS.qname;
       string_type_qname   UTL_DBWS.qname;
       retx                ANYDATA;
       retx_string         VARCHAR2 (100);
       retx_len            NUMBER;
       params              UTL_DBWS.anydata_list;
    BEGIN
       service_qname := UTL_DBWS.to_qname (NULL, 'WebServiceDemo');
       service_ := UTL_DBWS.create_service (service_qname);
       port_qname := UTL_DBWS.to_qname (NULL, 'WebServiceDemo');
       -- target --
       operation_qname := UTL_DBWS.to_qname ('http://my_target', 'Login');
       call_ := UTL_DBWS.create_call (service_, port_qname, operation_qname);
       -- URL --
       UTL_DBWS.set_target_endpoint_address
          (call_,
           'http://my_url'
       string_type_qname :=
                  UTL_DBWS.to_qname ('http://www.w3.org/2001/XMLSchema', 'string');
       UTL_DBWS.ADD_PARAMETER (call_,
                               'name',
                               string_type_qname,
                               'ParameterMode.IN'
       UTL_DBWS.set_return_type (call_, string_type_qname);
       params (0) := ANYDATA.convertvarchar2 ('my_login');
       retx := UTL_DBWS.invoke (call_, params);
       retx_string := retx.accessvarchar2;
    END;

    I have had this issue before when calling a .NET service, it was firewall related. I didn't actually make the fix so I can't tell you exactly how it was fixed on the server. I hope this info makes sense as this this the info I got from the IT boys
    I’ve install this tool on your computer:
    http://www.microsoft.com/downloads/details.aspx?FamilyID=05C2C932-B15A-4990-B525-66380743DA89&displaylang=en
    which does that:
    Firewall Client for ISA Server can be optionally installed on client computers protected by Microsoft ISA Server. Firewall Client for ISA Server provides enhanced security, application support, and access control for client computers. It provides authentication for Winsock applications that use TCP and UDP, supports complex secondary protocols, and supplies user and application information to the ISA Server logs.
    When a client computer running Firewall Client for ISA Server makes a request, the destination is evaluated by the Firewall Client software, and external requests are directed to the ISA Server computer for handling. No specific routing infrastructure is required. Firewall Client sends user information transparently with each request, enabling you to create a firewall policy on the ISA Server computer with rules that use the authentication credentials presented by the client. ISA Server allows you to configure automatic discovery for Firewall client computers, using a WPAD entry in DNS or DHCP to obtain correct Web proxy settings for clients, depending on their location.
    and I’ve added a exception in IE to the tools-lan settings-advanced-exceptions to be creditworks.* Did this by modifying the GPO that applies to your account, so all the users in National Office should have that exception.
    hope you can use this.
    cheers
    James

  • Call web service from pl/slq

    When I tried to execute the following code thru sqlplus:
    sql>@demodemosoap.sql
    SQL> @local_modified_orig.sql
    Package created.
    Package body created.
    No errors.
    before new request..
    before add param..
    before invoke..
    BEGIN dbms_output.put_line(time_service.get_local_time('08812')); END;
    ERROR at line 1:
    ORA-30625: method dispatch on NULL SELF argument is disallowed
    ORA-06512: at "SBEERAM.DEMO_SOAP", line 50
    ORA-06512: at "SBEERAM.DEMO_SOAP", line 83
    ORA-06512: at "SBEERAM.TIME_SERVICE", line 16
    ORA-06512: at line 1
    /*********Here is the complete code that I have: @demosoap.sql **********/
    Rem
    Rem $Header: soapdemo.sql 21-may-2002.13:48:17 rpang Exp $
    Rem
    Rem soapdemo.sql
    Rem
    Rem Copyright (c) 2002, Oracle Corporation. All rights reserved.
    Rem
    Rem NAME
    Rem soapdemo.sql - <one-line expansion of the name>
    Rem
    Rem DESCRIPTION
    Rem A PL/SQL demo package for making SOAP RPC calls.
    Rem
    Rem NOTES
    Rem This demo package can only be used in oracle 9ir2. It utilizes 9iR2's
    Rem XDB (XMLType and HttpUriType) and 9iR1's enhancements to UTL_HTTP to
    Rem make SOAP RPC calls.
    Rem
    Rem MODIFIED (MM/DD/YY)
    Rem rpang 05/21/02 - created
    Rem
    Rem A PL/SQL demo package that makes a SOAP RPC calls.
    Rem
    CREATE OR REPLACE PACKAGE demo_soap AS
    /* A type to represent a SOAP RPC request */
    TYPE request IS RECORD (
    method VARCHAR2(256),
    namespace VARCHAR2(256),
    body VARCHAR2(32767));
    /* A type to represent a SOAP RPC response */
    TYPE response IS RECORD (
    doc xmltype);
    * Create a new SOAP RPC request.
    FUNCTION new_request(method IN VARCHAR2,
    namespace IN VARCHAR2)
    RETURN request;
    * Add a simple parameter to the SOAP RPC request.
    PROCEDURE add_parameter(req IN OUT NOCOPY request,
    name IN VARCHAR2,
    type IN VARCHAR2,
    value IN VARCHAR2);
    * Make the SOAP RPC call.
    FUNCTION invoke(req IN OUT NOCOPY request,
    url IN VARCHAR2,
    action IN VARCHAR2) RETURN response;
    * Retrieve the sipmle return value of the SOAP RPC call.
    FUNCTION get_return_value(resp IN OUT NOCOPY response,
    name IN VARCHAR2,
    namespace IN VARCHAR2) RETURN VARCHAR2;
    END;
    show errors
    CREATE OR REPLACE PACKAGE BODY demo_soap AS
    FUNCTION new_request(method IN VARCHAR2,
    namespace IN VARCHAR2)
    RETURN request AS
    req request;
    BEGIN
    req.method := method;
    req.namespace := namespace;
    RETURN req;
    END;
    PROCEDURE add_parameter(req IN OUT NOCOPY request,
    name IN VARCHAR2,
    type IN VARCHAR2,
    value IN VARCHAR2) AS
    BEGIN
    req.body := req.body ||
    '<'||name||' xsi:type="'||type||'">'||value||'</'||name||'>';
    END;
    PROCEDURE generate_envelope(req IN OUT NOCOPY request,
                   env IN OUT NOCOPY VARCHAR2) AS
    BEGIN
    env := '<SOAP-ENV:Envelope
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/1999/XMLSchema">
    <SOAP-ENV:Body><'||req.method||' '||req.namespace||'
    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">'||
    req.body||'</'||req.method||'></SOAP-ENV:Body></SOAP-ENV:Envelope>';
    END;
    PROCEDURE show_envelope(env IN VARCHAR2) AS
    i pls_integer;
    len pls_integer;
    BEGIN
    i := 1; len := length(env);
    WHILE (i <= len) LOOP
    dbms_output.put_line(substr(env, i, 60));
    i := i + 60;
    END LOOP;
    END;
    PROCEDURE check_fault(resp IN OUT NOCOPY response) AS
    fault_node xmltype;
    fault_code VARCHAR2(256);
    fault_string VARCHAR2(32767);
    BEGIN
    fault_node := resp.doc.extract('/soap:Fault',
    'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/');
    IF (fault_node IS NOT NULL) THEN
    fault_code := fault_node.extract('/soap:Fault/faultcode/child::text()',
         'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
    fault_string := fault_node.extract('/soap:Fault/faultstring/child::text()',
         'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/').getstringval();
    raise_application_error(-20000, fault_code || ' - ' || fault_string);
    END IF;
    END;
    FUNCTION invoke(req IN OUT NOCOPY request,
    url IN VARCHAR2,
    action IN VARCHAR2) RETURN response AS
    env VARCHAR2(32767);
    http_req utl_http.req;
    http_resp utl_http.resp;
    resp response;
    BEGIN
    generate_envelope(req, env);
    -- show_envelope(env);
    http_req := utl_http.begin_request(url, 'POST','HTTP/1.0');
    utl_http.set_header(http_req, 'Content-Type', 'text/xml');
    utl_http.set_header(http_req, 'Content-Length', length(env));
    utl_http.set_header(http_req, 'SOAPAction', action);
    utl_http.write_text(http_req, env);
    http_resp := utl_http.get_response(http_req);
    utl_http.read_text(http_resp, env);
    utl_http.end_response(http_resp);
    resp.doc := xmltype.createxml(env);
    resp.doc := resp.doc.extract('/soap:Envelope/soap:Body/child::node()',
    'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"');
    -- show_envelope(resp.doc.getstringval());
    check_fault(resp);
    RETURN resp;
    END;
    FUNCTION get_return_value(resp IN OUT NOCOPY response,
    name IN VARCHAR2,
    namespace IN VARCHAR2) RETURN VARCHAR2 AS
    BEGIN
    RETURN resp.doc.extract('//'||name||'/child::text()',
    namespace).getstringval();
    END;
    END;
    show errors
    /************** local.sql ********/
    Rem
    Rem $Header: time.sql 03-jul-2002.13:48:17 rpang Exp $
    Rem
    Rem time.sql
    Rem
    Rem Copyright (c) 2002, Oracle Corporation. All rights reserved.
    Rem
    Rem NAME
    Rem time.sql - <one-line expansion of the name>
    Rem
    Rem DESCRIPTION
    Rem PL/SQL Web service demo
    Rem
    Rem NOTES
    Rem This demo illustrates how to use PL/SQL to use Web service.
    Rem This demo utilize 9iR2's XDB (XMLType and HttpUriType) and 9iR1's
    Rem enhancements to UTL_HTTP to retrieve the local time for a give zip code.
    Rem
    Rem SQL> SET serveroutput ON
    Rem SQL> exec dbms_output.put_line(time_service.get_local_time('94065'));
    Rem 7/3/2002 1:33:04 PM
    Rem
    Rem PL/SQL procedure successfully completed.
    Rem
    Rem MODIFIED (MM/DD/YY)
    Rem rpang 07/03/02 - created
    Rem
    Rem A PL/SQL that makes a SOAP call to a Web service to get local time
    Rem
    CREATE OR REPLACE PACKAGE time_service AS
    FUNCTION get_local_time(zipcode IN VARCHAR2) RETURN VARCHAR2;
    END;
    CREATE OR REPLACE PACKAGE BODY time_service AS
    -- Location of Web service definition
    -- http://www.ripedev.com/webservices/LocalTime.asmx?WSDL
    FUNCTION get_local_time(zipcode IN VARCHAR2) RETURN VARCHAR2 IS
    req demo_soap.request;
    resp demo_soap.response;
    BEGIN
    dbms_output.put_line('before new request..');
    req := demo_soap.new_request('LocalTimeByZipCode',
    'xmlns="http://www.ripedev.com/webservices/"');
    dbms_output.put_line('before add param..');
    demo_soap.add_parameter(req, 'ZipCode', 'xsd:string', zipcode);
    dbms_output.put_line('before invoke..');
    resp := demo_soap.invoke(req,
    'http://www.ripedev.com/webservices/LocalTime.asmx',
    'http://www.ripedev.com/webservices/LocalTimeByZipCode');
    dbms_output.put_line('before return..');
    RETURN demo_soap.get_return_value(resp, 'LocalTimeByZipCodeResult',
    'xmlns="http://www.ripedev.com/webservices/"');
    END;
    BEGIN
    * Since the Web service resides outside of the firewall, we need to set
    * the proxy in the current session before invoking the service.
    utl_http.set_proxy('www-proxy', NULL);
    utl_http.set_persistent_conn_support(TRUE);
    dbms_output.put_line('in main..');
    END;
    show errors
    SET serveroutput ON
    exec dbms_output.put_line(time_service.get_local_time('08812'));

    Repost ->method dispatch on NULL SELF argument is disallowed.
    I had another thread with this issue, but I didn't get answer. Can somebody help?

  • PL/SQL Web Service element, operation, part names etc all in lowecase

    I have generated web services from pl/sql packages on a 11.2.0.1.0 database using JDev 11.1.1.5.0. In the generated wsdl all the names are in lowercase. Is there anyway of getting these names to match the case the objects are stored in the database?
    Eg. CREATE OR REPLACE TYPE sampleEntity AS OBJECT (entityNumber INTEGER
    ,entityType VARCHAR2(1)
    ,displayName VARCHAR2(400))
    But in the wsdl they are all lowercase:-
    Eg.
    <xsd:complexType name="sampleentity">
    <xsd:sequence>
    <xsd:element name="entitynumber" type="int" nillable="true"/>
    <xsd:element name="entitytype" type="string" nillable="true"/>
    <xsd:element name="displayname" type="string" nillable="true"/>
    Thanks.
    Steve.

    Ok, this sounds like a known bug ( Bug 5908689 ) in 10.1.3.1, but this was specific to non-Windows platforms. Are you on Linux/Solaris or any other platform? It might or might not be the same problem you are hitting but it does seem quite close (can't say for sure without a close investigation, I am afraid!)
    In any case, this bug is fixed in the 10.1.3.4 patchset (besides quite a few other fixes and enhancements) - so would recommend you to first apply the 10.1.3.4 patchset and retest. The patchset is available on My Oracle Support (formerly Metalink) under Patch 7272722. Or you could go a step ahead, and apply the 10.1.3.5 patchset (Patch 8626084) instead which is the latest patchset for OracleAS 10.1.3.x.
    HTH,
    Yogesh

Maybe you are looking for

  • Can i use an external dvd burner on my imac?

    My dvd drive is not working. Would i be able to buy & use an external burner?  I have a G5 using Snow leopard. thanks

  • Cannot get CC updates - Specifically Camera Raw 8.4

    Adobe Raw Converter 8.4 is now available but if I check for updates in Bridge CC 64 (Help/Updates) and in Creative Cloud Manager both report that all of my applications are up to date. This seems to happen every time that a CC application is updated

  • Enterprise manager 11g doesn't display

    Hi all, I have installed Oracle 11g on Windows server 2008. But now enterprise manager doesn't want to open or display. C:\Users\Oraclemon>set ORACLE_SID=wmconpd1 C:\Users\Oraclemon>emctl start dbconsole Oracle Enterprise Manager 11g Database Control

  • Why are missing items when import pst files to Outlook 2011 for mac?

    Hello. After installing Office 2011 for Mac I configured Outlook and it was allright. But when I tried to import a pst file from the old laptop who has Office 2007, I found that in the Outlook 2011 Inbox I have only ~60% items comparative with the Ou

  • How to read/convert hexidecimal string to an interger

    Hello everyone, This is probably very simple but non of my books show what I need to do. I am running Java 1.4.2 and not ready yet for 1.5. I wanted to read Property entries containing hexidecimal entries and then convert the hexidecimal entries (whi