Discovery System: Problems with exposing RFC as web service

We have a version 2 discovery system and have successfully implemented the three exercises from the TechEd workshop (Sales Order Distribution, Creating a PO Store Record WS, Adding a New Step to the Procurement Scenario with SAP CAF GP). It seems to work fine except for two issues with the RFC/WS:
1) The RFC, and therefore the WS, always returns an empty string instead of the 'X' that the documentation shows in Step 4.h. We checked the RFC itself and it looks like it has an error with the price field; it always appends a blank to the end of the price string and then errors.
2) The created web service does not show up on the Web Services Navigator page. Since the instructions tell you to save the URL to the WSDL, we can find the web service and test it, but you cannot find it on the Navigator page.
Neither of these problems are huge, but they make me worry that something is not quite right in the Discovery System and we may end up with larger problems later. Any ideas what could cause these two problems, and how to fix them?
Thanks, Eric
Message was edited by:
        ERIC HAMER

Hi Eric,
First of all let me assure you that your system is perfectly fine and both topics that you have raised are the way the system is suppose to respond.
1. The reason that the service is returning a null is because you are entering the same input parameters more than once. Since some of the parameters are used as primary key's in the database, you will need to change them in order to successfully store the data.
2. The reason that you don't see the service in the Navigator page is because this service resides in the ERP and not in WebAS. Only services deployed on the WebAS will appear in the Web Service Navigator page.
Thanks,
Itai

Similar Messages

  • Expose RFC as Web Service

    Hi Guys;
    Can anyone provide me step by step procedure for RFC to Web Service scenario?
    meaning to expose the RFC as Web Service in the SAP CRM?
    Thanks
    Kfir

    Hello Kfir,
    You can host webservice  by doing the below steps:
    Login to CRM system and goto txn:BSP_WD_CMPWB
    Give component as :WS_DESIGN_TOOL
    Hope this helps!
    Best Regards,
    Shanthala Kudva.

  • Exposing RFC as Web Service in XI

    Hi,
    I want to expose RFC of an external R/3 System as a Web Service in XI. I do not have much Idea about XI.
    It will be great help If I can get some documentation on step by step tutorial of the same type of Scenario.
    Thanks
    Naresh

    Technically it can be done though.
    I have done it in Xi 3.0.  You create a synchronous interface in XI.  Generate the WSDL from the repository.  The calling systems consumes it using SOAP.  The destination system does not need to be WAS.  It can be 4.6C, or even non-Sap.
    I have tested this for Asynch postings into 4.6C and it works fine so it should work for synch also however, XI has some problems with the bindings in the WSDL at this stage.  You may need to manipulate the WSDL generated in the repository to create SOAP bindings.  I understand the problem is being resolved in SP4....
    If you do not know about WSDL bindings go to: http://www.w3schools.com/wsdl/default.asp
    Regards,
    Jason

  • Problem with CLOB in PLSQL Web Service.

    Hi-
    I have Oracle Package that accepts CLOB as IN parameter and another CLOB as an OUT parameter. I went thru the tutorial in how to publish a database
    PLSQL package as a web service with out any problem. I was able to publish and call successfully my PLSQL web service thru a browser and thru a simple C# application. It's been working fine until I receive an XML file which is bigger than 32766:
    java.sql.SQLException: setString can only process strings of less than 32766 chararacters at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:137)]
    JDeveloper version: JDeveloper 10g (10.1.2.2.0) Build 1929
    Oracle Application Server 10g
    I'm newbie in JDeveloper so any help is greatly appreciated.
    Thanks!

    well Shay,
    i've used JDev's tools to developer and to deploy the web service: the war and ear files are automatically generates you to the end of the process.
    I have included all the files java and the compiled classes, but I do not have files jar.
    But don't works: if i create only one java class with all code inside then it works fine!!
    Daniele

  • Problem with java and flex web service

    Hi,
    I have a basic web service written in java using jax ws 2.1
    ri. I need to call it from Flex using the WebService class
    Annotations for the java web method :
    @WebMethod
    public void Login(
    @WebParam(name="server") String serverURL,
    @WebParam(name=AUTHENTICATE_HEADER,header=true,mode=WebParam.Mode.INOUTHolder<Authenticate Header>
    authHeader)
    When I try and call the service from Flex , it can't find the
    login method and attempts to call it fail. If I set the web service
    to RPC based using @SOAPBinding , the method is found but then
    there are issues with the authentication header.
    What do I need to do to get flex web services communicating
    succesfully with java ?
    Are there are any known compatibility issues ? Or guidelines
    for going about this ?
    Any help would be appreciated

    well Shay,
    i've used JDev's tools to developer and to deploy the web service: the war and ear files are automatically generates you to the end of the process.
    I have included all the files java and the compiled classes, but I do not have files jar.
    But don't works: if i create only one java class with all code inside then it works fine!!
    Daniele

  • Problem with XML replied from web services

    <cfset ServiceResult = "">
    <cfset xmltext=xmlParse('<?xml version="1.0" ?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body>
    <runProcess xmlns="http://3e.pl/ADInterface">
    <ModelRunProcessRequest>
    <ModelRunProcess AD_Process_ID="1000000" AD_Menu_ID="0" AD_Record_ID="0" DocAction="">
      <serviceType>IInvoice</serviceType>
        <ParamValues>
             <field column="DocumentNo">
                    <val>#DOCNO_P#</val>
             </field>
        </ParamValues>
      </ModelRunProcess>
    <ADLoginRequest>
      <user>WebService</user>
      <pass>WebService</pass>
      <lang>en_US</lang>
      <ClientID>11</ClientID>
      <RoleID>50004</RoleID>
      <OrgID>11</OrgID>
      <WarehouseID>103</WarehouseID>
      <stage />
      </ADLoginRequest>
      </ModelRunProcessRequest>
      </runProcess>
      </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>')>
    <cfhttp method="post" url="http://192.168.1.11:8080/ADInterface/services/ModelADService">
    <cfhttpparam type ="XML" value=#xmltext#>
    </cfhttp>
    <cfset ServiceResult = cfhttp.fileContent>
    from the code above, i will get replied and store into ServiceResult as below
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soap:Body><ns1:runProcessResponse
    xmlns:ns1="http://3e.pl/ADInterface"><RunProcessResponse
    xmlns="http://3e.pl/ADInterface" IsError="false">
    <Summary>99 : Transaction Failed C_InvoiceLine</Summary><LogInfo />
    </RunProcessResponse></ns1:runProcessResponse></soap:Body></soap:Envelope>
    actually what i need is only those information inside the <summary> tag. How can i get the result i need?
    Any expert can give their advies? thank you.

    You will need to use CF's built-in XML tags and functions. See sample below:
    <cfsavecontent variable="serviceResult"><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soap:Body><ns1:runProcessResponse
    xmlns:ns1="http://3e.pl/ADInterface"><RunProcessResponse
    xmlns="http://3e.pl/ADInterface" IsError="false">
    <Summary>99 : Transaction Failed C_InvoiceLine</Summary><LogInfo />
    </RunProcessResponse></ns1:runProcessResponse></soap:Body></soap:Envelope>
    </cfsavecontent>
    <!--- verify content if well formed XML --->
    <cfif IsXml(serviceResult)>
        <!--- create an XML object that CF's XML functions can use --->
        <cfset xmlResult=XmlParse(serviceResult, true) />
        <!--- check for a summary element, will return an array of matching objects
        Note that second parameter for XmlSearch function is an Xpath expresssion
        For an overview of Xpath see http://msdn.microsoft.com/en-us/library/ms256115.aspx
        For seaching XML which uses namespaces in CF see: http://www.coldfusionguy.com/ColdFusion/blog/index.cfm/2008/9/26/XMLSearch-Specify-xmlns-n amespaces-in-an-xPath-Search
         --->
        <cfset summarySearch=XmlSearch(xmlResult, "//*[local-name()='Summary' and namespace-uri()='http://3e.pl/ADInterface']") />
        <cfif ArrayLen(summarySearch) gt 0>
            Summary found: <cfoutput>#summarySearch[1].XmlText#</cfoutput>
        <cfelse>
            Summary not found
        </cfif>  
    </cfif>

  • Problem with plugins in my web site

    Problem with plugins in my web site PLS HELP 

    i'm pretty sure you're going to get no help unless you supply some helpful information.

  • Synchronous RFC-XI-Web Service with no request method

    Hello guys,
    I'm trying to set up an RFC-XI-Web Service scneario.  But with the particularitity that the WSDL does not have a request method. It only has a very simple response method.
    How can I make this? How can XI call the Web Service, if I dont have any request method?
    Thanks for your help.
    Felipe

    Matias, after some test I think that VJ is correct.
    It is failing at the moment of delivering the message to the WS, I'm getting the followin error messages:
    com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/PLAIN; HTTP 302 Moved Temporarily
    I tested the WS with XMLspy and works correctly.
    I'm starting to believe that the best solution is to simply create a dummy request in the WS.
    It would be great if someone else test in their own and see if we get the same result.  Thanks,
    Felipe

  • Problems with error-page in web.xml and page caching

    Having a few problems with error pages and web.xml with browsers caching the error pages and strange errors coming out of weblogic.servlet.intenal.WebAppServletContext
    I'm trying to set a web app up so that all http errors and all exceptions are routed thruogh predefined resources. For now, I'm simply send 400 errors to 400.html and the ServletException, IOException and RuntimeException to respective html pages.
    What I'm finding is that the error codes work fine but the exceptions are only be routed to the correct error page for the first call to the servlet after server restart.
    So for example, I have my servlet throwing a ServletException as a test case. The weblogic server log shows that ServletException is thrown, and the correct error page for ServletExceptions is shown.
    If I change the Servlet code to throw IOException in place of SevletException, the weblogic.log shows that IOExceptyion is being thrown (so the servlet has deployed successfully), however the Servletxception error page is shown on the browser.
    I'm using IE6 and I've changed the setting such that a new page is requested every time using the tools-internet options-temp internet files-settings option to "check for new versions of stored pages: Every visit to the page".
    Despite this, the servlet exception error page still appears.
    If you clear the cache from the temp intenet files->delete files IE option, the correct errror page will be shown so it appears that the browser cache is being used after all.
    everytime I delete the temp intenet files I get the correct error page on the first request after but then not after that.
    I have implemented the service method for this test to throw the exceptions - does this make a differecne?
    As a test, I have moved the imlpementation to the doGet method instead bu I now get a strange eror from weblogic comlpaining about an arrayOutOfBoundsException because eror codes in the web.xml are not supported! - see error above.
    Any help is appreciated

    After further investigation: -
    There are no problems with error pages based on error codes, only error exceptions.
    As a test case, I have a service method in a servlet throwing either one of the three exception types that servlets can throw (Runtime, Servlet & IO) the following rules apply. The exception to be thrown is hardcoded and is changed and the web app rebuilt each time. The correct web.xml has been deployed to the app server (checked through console). the webapp is being redeployed correctly - this can be seen in the weblogic log, where the correct exception is reported.
    I am using WLS 8.1, Servlet 2.3, JDK 1.4.1_02
    In all cases, the weblogic log reports that the servlet is throwing the exception as expected.
    Despite having set error-page for exception javax.servlet.ServletException, the exceptions are diverted to the error page that has been set up for http error code 500
    The error page for ServletException is therefore never reached.
    I have the browser set to request pages every time it is asked.
    Once the servlet has thrown an IOException, the only way to get the browser to report an IO or Runtime exception error-page is to clear the browser cache. Restarting the server has no effect.
    Once the servlet has responded with ANY exception, it is not possible to get it to report a ServletException (which is incorrectly reported as a 500 anyway) unless the cache is cleared. Restarting the server has no effect.
    In the case where the servlet throws ServletException, it has no root exception. The servlet 2.3 spec states that if ServletException is thrown but cannot be found in the error pages, the root excpetion will be extracted and the error page list traversed again. Knowing that the RuntimeException error page is correct shown when RuntimeException is throwm, I have nested this inside the ServletException, however error page for http error 500 is still shown.
    I don't believe this is a WLS 8.1 problem, as the console shows that the correct exception is thrown each time. this is backed up by the fact that the correct exception page is thrown when the cache is cleared regardless of what exception was previousdly thrown by the servlet. This excludes ServletException which is always incorrectly thrown as a 500.

  • Problems with LOV'S in Web

    Hi,
    I have a problem with LOV'S in Web. I've Forms Server in two servers. User's work with them.
    When I push the LOV'S keys, the session is killed.
    Please Help Me
    Thaks

    You need to break the problem down. Do you get the same problem with a one field Forms launching and LOV?
    1) What key did you use?
    2) What version of Forms
    3) What OS?
    4) Did you try on another OS?
    5) Does it work client server?
    1) I use Ctrl + L
    2) Forms Deleveloper 6i Release 2
    3) Windows 2000 server
    4) No
    5) Work OK
    Why the session is killed ????
    Thanks

  • Any existing BAPI that can be wrapped and exposed as a web service ???

    Hi ,
    I am designing PI Collaboration Platform and that all about Monitoring across SAP ECC, SAP PI and Non-SAP applications.
    BUSINESS CASE: Some clients are  looking for a solution that allows there management some visibility into the end-to-end aspect of processes, we will limit our discussion to SAP ECC and PI.
    SOLUTION: BAM ultimately helps solve this problem at an enterprise level - however that is a heavy investment for most organizations - is there an alternative that we can provide ? Example a generic web service that can be invoked from a 3rd party tool to provide reports.
    We do have solution :
    We can configure Proxy adapter and can write Java web service to invoke a method to extract the data from ECC and one or more report generating methods based on the standard ( like PDF,EXCEL etc)
    but we are still looking  for an existing BAPI that can be wrapped and exposed as a web service ????
    Need solution for the above ?

    Hi Sanjay,
    Yes  BAM  has a bigger take, if you are looking for PI monitoring reports  then please have a look at the following blogs which might
    give you some insight.this basically deal with reading data from SXMB_MONI tables.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/909760cb-0ec8-2a10-4a96-ee8417acfbc9
    http://wiki.sdn.sap.com/wiki/display/Snippets/PIMonitoringFunctionality-FetchingDatafromSXMB_MONIStandardTables-PartI
    i dont think there is any BAPI as such atleast wrt to PI.
    Best Regards,
    Srinivas

  • Developing an application and exposing it as web service

    Hi all,
    I have succesfully deployed and run helloworld service with Apache soap and tomcat.
    Now i want to develop a financial application to find account balance given credit and debit and expose it as web service.
    The problem is I am New to Java.
    Can anybody guide me how to proceed from scratch
    any help will be highly appreciated
    Thanks and regards
    nehaa

    There's a complete example of a bank application in the J2EE tutorial:
    http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/Ebank.html

  • Problem in stubbing out Soap Web Service

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

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

  • RFC- XI- Web services

    Hi All,
          We are configuring RFC->XI->Web Services scenario.
    We are using SOAP adapter in the receiver side. We are getting the following error message.
    soap fault: System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: ConversionRate. at System.Web.Services.Protocols.Soap11ServerProtocolHelper.RouteRequest() at System.Web.Services.Protocols.SoapServerProtocol.Initialize() at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing).
    Kindly help.

    Hi,
    Quick checks-
    1) Reciever SOAP Adapter configuration
    2) Check the Target URL - it should be wsdl URL
    3) Transport protocol used (HTTP)
    Check this blog about SOAP Adapter Configuration carefully-
    /people/shabarish.vijayakumar/blog/2006/03/28/rfc--xi--webservice--a-complete-walkthrough-part-2
    http://help.sap.com/saphelp_nw2004s/helpdata/en/29/5bd93f130f9215e10000000a155106/content.htm
    Regards,
    Moorthy

  • GenericServiceFactory initialization problem when trying to load Web servic

    Hi,
    I am making a Guided procedure that calls a webservice. I have created a new Destination Template and was able to load the webservice definition successfully, but when I test the callable object I created for that same webservice y get the error:
    GenericServiceFactory initialization problem when trying to load Web service model for WSDL.
    Somehow I think there is something wrong with the user authentication. The Destination template has a user and password but somehow I think the callable object test is not using this information at all.
    Can anyone help ?
    Thanks in advance

    Hi Hans,
    Have you verified if you can call any external web service calls from your J2EE engine?  Go into the SOA Management / Global settings (if you are on CE - if you're on 7.0 it's in manage WS desintations).
    Look at your proxy settings and set them like your web browser that enables external calls.  For example, in the SAP network I set my global proxy settings on my local J2EE engine to be:
    Proxy host:  proxy
    Proxy port: 8080
    Exclude list:  *.sap.corp
    Does that make sense - have you verified if your settings are correct for your company?
    Regards
    Ginger

Maybe you are looking for

  • Cost center after settlement in FAGLL03 REPORT

    we have process of material issue thru maintennce order. after issuing material FI entry is on respective gl and maintence order in report fagll03 we can see this combination and then after settlement of cost of order on cost center we are not able t

  • How to get rid of freeform input layer

    Hey.Somehow i have started getting a gray layer for drawing letters every time i have a text input field.i dont know how to get rid of it permanently.also i can no longer hold down a letter to get a capital letter and the autocorrect doesnt work.help

  • How Can I Change My Back-up Encryption Password, As I Cant Remember What It Is?

    Im trying to get into my data on diskaid, but cant get on it as ive forgotten my back-up encrption password and i cant change it without knowing my old password. Is there anyway around this without losing everything thats on my phone already?

  • Lauching an external file from a JSP

    HI ALL I have a compiled HTML help file, which i would like to open from a web page through a simple hyperlink, but if provide it as a link the save it/open from location dialog box comes up. I dont want that to happen, is there anyway to directly la

  • Removing a node in a tree

    Im using this line of code var selectedNode:XML = XML(MyTree.selectedItem); and i want to remove the selectedNode from the tree... The only way that I have found to remove the node is to use these lines of code which seems ridiculous just to remove t