Cannot call web service methods -  ClassCastException

Hello,
my WD application is consuming an adaptive web service.
In the wdDoInit() of my custom controller I call the method "Request_GetProject"...
This has worked fine until I modified my web service and reimported it into my wd project. (I am using to different DCs, one for the model and one for the rest of the project).
Now, if I try to deploy the application I get following error:
   java.lang.ClassCastException
    at com.pr.ods.ws.Response_GetProject.geGetProjectResponse(Response_GetProject.java:60)
    at com.pr.ods.wdp.IPublicODSCustom$IRP_GetProjectResponseNode.doSupplyElements(IPublicODSCustom.java:29211)
    at com.sap.tc.webdynpro.progmodel.context.Node.supplyElements(Node.java:406)
    at com.sap.tc.webdynpro.progmodel.context.Node.getElementList(Node.java:345)
    at com.sap.tc.webdynpro.progmodel.context.Node.getChildNodeInternal(Node.java:1178)
    ... 52 more
Do you have any idea why this error occurs?
Edited by: RoM_12 on Mar 26, 2010 12:29 PM

Hi Friend,
I think you are refering to a wrong structure/table name when the exception is thrown. Same structure/table names can exist for more than one model. Please just bring the cursor of the structures to view the exact fully qualified name for the structure on hover.
Regards,
Tushar S

Similar Messages

  • TimeoutException - when calling web services method that opens a PDF

    I am updating a legacy program which uses Adobe Acrobat 7.0 Professional.  The idea is that the client will call web service methods, which handle opening a PDF, reading from or writing to the PDF, saving if necessary, and closing.  It then returns the data (if reading) to the client.
    The only issue with this that I'm having is that the client will pause for about 60 seconds, and throw a TimeoutException.
    I know that the method on the web services end is working, because I wrote a quick driver which calls the very same method, but it executes normally, and works perfectly.
    My question is basically, is there anything that would cause the client to hang/freeze when calling the web services method to do this task? Everything is running on my workstation, and I've debugged to see that the filename being passed is the same in both tests.
    Thanks!

    Thank you, I somehow missed seeing that subforum. I reposted it in that forum instead. This thread can be deleted/closed. Thanks!

  • Calling Web Service Methods in  Web Dynpro

    1. Created a Bean with get & set methods..Created a portal Service around it
    2. Created a Web Service and checked the same using EP Web Checker
    3. Created a Web Dynpro app having two screens (First one for setting String value and second  for getting string value)
    4. Configured the Web Service in the model...I can see the Request and Response in the Context...Mapped the request to first view and Response to Second View
    How do I call the Web Service method to Set the Paramter and how do I extract the value from the response?
    Rgds

    Hello Gulshan,
    Did you check this:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/webdynpro/tutorial on accessing an email web service - 6_0_.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/webdynpro/tutorial on accessing the car rental web service - 7.htm
    Best regards, Maksim Rashchynski.

  • Serialization error when calling web service method

    Hi,
    In JDeveloper 10.1.3.1, I'm working on an EJB that will be deployed as a web service. There is a method in the EJB that is defined to return a generic Object, but in the implementation, it really returns one of several possible specialized bean objects. I can deploy the EJB successfully to IAS 10.1.3.1.
    I created a web service proxy from the wsdl that was generated from deploying the EJB. Using the proxy, I try to call the EJB method and cast the method's return value to the bean object I know should be returned. However, I get an error like this:
    java.rmi.ServerException:
    start fault message:
    Internal Server Error (serialization error: no serializer is registered for (class com.test.TestBean, null))
    :end fault message
    Does anyone know how this serialization error can be resolved? If I change the web service method signature to return the bean object that is actually being returned (instead of Object), then it works fine. But I want to be able to define the method to return a generic Object because I plan to make the method flexible enough to return several different types of bean objects. Whenever the client calls the method, it will know what is the actual object being returned and I had planned to cast the return value to its actual class.
    Thanks for any ideas.

    Well, I think so... I've followed all the steps, and my merged WSDL file seems like the one in page 12...
    Any suggestion, please?
    Thank you,

  • Calling web service method.Stuck in while loop

    I am implementing a board game using asp.net web service. Players connect to this web service and play.
    Once player click on a cell in board it should be written to web service and other players board repaint according to that click.Writtting to web and reading is working, but the switch player method in below do not work.It stuck in the while loop.Even other player has played this player do not identify he has played it wait in the loop.
    private void switchPlayer(String player){
            try { // This code block invokes the ServiceSoap:switchPlayer operation on web service
                webservice.Service service = new web.Service_Impl();
                webservice.ServiceSoap serviceSoap = service.getServiceSoap();
                while(serviceSoap.switchPlayer(player)!="aPlayer"){
                   System.out.println("It's oppenents turn");//Stuck here
                    //remote player already exists?
              //   readLabel();
                System.out.println("It's my turn");//don't come here even player b played
                       }  catch(Exception ex) {
                // TODO handle custom exceptions here
              }

    Does some one knows url of similar type game
    designing.I would suggest that you get your basics right before going into that stuff.

  • [b]Help in calling web services method[/b]

    i doing at client side now. iwish to call the method which provide by axis.
    here is my code....
    import hotel.*;
    //normal servlet package import
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.sql.*;
    import java.text.*;
    import java.net.*;
    import java.util.Date;
    public class GetWs extends HttpServlet
         public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
              WsSoapBindingStub binding;
              int i     =     1;
              binding =     (WsSoapBindingStub) new WsServiceLocator().checkID();
              String test = "";
              test = binding.checkID(i);
              PrintWriter out=response.getWriter();
              out.println("hihi"+binding);
              out.close();
         public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException
              doGet(request, response);
    i face the cant find checkID() method in line:
    binding =     (WsSoapBindingStub) new WsServiceLocator().checkID();
    thanks and hope will get help soon.

    Hi,
    I think you have not imported all the classes required for Axis Client as Service and Call. Please specify in details you problem.. I think its an issue regarding classpath..anyways mail me more info on [email protected].. please specify ur name in subject line..
    Happy coding

  • Calling web service from MBean weblogic cannot find type mapping file

    When calling web service from custom MBean i get java.io.IOException.
    java.io.IOException: unable to find the type mapping resource file for:
    net.msl.sfx.ebooking.client.BookingPartiesServiceService
    at weblogic.webservice.core.encoding.DefaultRegistry.<init>(DefaultRegis
    try.java:67)
    at weblogic.webservice.core.rpc.ServiceImpl.<init>(ServiceImpl.java:83)
    at net.msl.sfx.ebooking.client.BookingPartiesServiceService_Impl.<init>(
    BookingPartiesServiceService_Impl.java:22)
    at net.msl.sfx.ebooking.service.EBookingService.getBookingParties(EBooki
    ngService.java:59)
    The types.xml file is placed in same jar file as the classes such as net.msl.sfx.ebooking.client.BookingPartiesServiceService_Impl.
    When calling the same class/method from a EJB, everything works fine and the web service is called.

    i am having the same problem.
    Do you have a solution now?
    Thanks

  • Calling a asynchronous web service method

    I am designing a game using web services(asp.net)
    one player write to array and waite till other modify that
    array.Assume i am player 1 and wait till player 2 modify array
    in web service.Writing to array part is working.But reading part
    is not working .I implement asynchronous call to web service
    call reLabelAsync and pass argument 1.That means i am player 2
    modify the array and return to my program onces other player(player 1)
    modify the array.And modify my program according his updates.
    private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {                                    
    jLabel1.setText("O");//this my player
    // jProgressBar1.setIndeterminate(true);
    writeArra(2,1);//this is working
    reLabelAsync(1);
    public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
    public void run() {
    new NewJFrame().setVisible(true);
    public void reLabelAsync(int player){
    // Call Web Service Operation(async. callback)
    as.Service service = new as.Service();
    as.ServiceSoap port = service.getServiceSoap();
    // TODO initialize WS operation arguments here
    javax.xml.ws.AsyncHandler<as.ReLabelResponse> asyncHandler = new javax.xml.ws.AsyncHandler<as.ReLabelResponse>() {
    public void handleResponse(javax.xml.ws.Response<as.ReLabelResponse> response) {
    // java.awt.EventQueue.invokeLater(new Runnable() {
    // public void run() {
    String s;
    try {
    // TODO process asynchronous response here
    s = response.get().reLabelResult();
    s=removeTags(s);//this to remove tags.working
    System.out.println(s);
    if (s=="1"){
    jLabel1.setText("X");//update my program
    else{
    jLabel2.setText("X");//update my program
    } catch(Exception ex) {
    // TODO handle exception
    jProgressBar1.setIndeterminate(false);
    can some one please help me. I try to call asynchronous method in loop.
    I think it's the way to do this. But it didn't work.Thanks..

    Looking a bit at your history here... this is the fourth go around at least for dancing around this question.
    To summarise the advice given to you previously "Please stop blathering on about asynchonous blah blah and start by sending and recieving a message correctly"
    You really seem way over your head here. An empty catch block is a bad bad bad sign. You can run before you can walk and right now you're having problems crawling.

  • URGENT: Getting app module service method result and calling web service??

    We have a .jar from another vendor that allows us to interact with an FOP rendering process. This .jar has methods that allow us to pass several parameters which results in the creation of the PDF which is stored in the database.
    We need to create the XML, which we've done, via view objects and a method in our application module. The developers at this point, have placed the code to call the service method into the model code that generates the XML. The actual .jar file for this is in the viewcontroller area.
    Is this a "reasonable" approach? ( that is, importing view object jar in model)
    The web service needs to have several parameters sent to it, most of which are configured in the web.xml. They are now being passed via a data action to the model's service method.
    Shouldn't the data action be written more like the following - note: some questions in here as well...
    public void onShowPdf( DataActionContext ctx )
    // note, you can get here from 5 different places in the application and we need to be able to retrieve the bindings from these separate places for proper generation... how??
    AppModule am = (AppModule) getAm();
    String strXML = am.getXML(...);
    // get web.xml values from session context...
    PDFArchiver stub = new PDFArchiver();
    stub.generate( send prms here );
    // the next page just needs to have 3 of the parameters exposed from this page to yield the results of the generated pdf (retrieve from db)
    // what would be the best way to get the parameters over there?
    } // onShowPDF
    after this data action, it simply forwards to the next page, which has a frame to display the pdf with an [ok] button at the bottom. The pdf is rendered via a Servlet.
    one last question...
    Right now, the service method was dropped on the data action, and it is automatically invoked ( we've bound the 8 parameters to it by over-riding initializeMethodParameters). If we were to switch it so the method RETURNED the XML, how would we get the results back while INSIDE A DATA ACTION? I could see if we called it by invoking a service method from the app module instance, but how do you do it in the lifecycle of the data action??
    Whew, that's all the questions for now.
    Any help, again, would be GREATLY appreciated.

    Most of the items in this previous post have been addressed. The one problem that remains is that we use a servlet to display the PDF. The servlet reads 3 parameters from the URL to send to a service method that reads and streams the PDF to the browser.
    HOWEVER, the user can view source and then paste parameters into the URL and view whatever he wants. So:
    1. How can we prevent the servlet parameters from being seen inside the source? OR, how can we simply prevent the user from invoking the view pdf servlet with other parameters?
    2. We've temporarily, written a data action (displayPDF) which has no service method. In the findForward data action, we grab the bindings that the servlet needs from other pages (4 different binding containers), then invoke the service method and write the data to the response object. This seems to work. So, our page has an iframe with the src="displayPDF.do".
    Again, should this be done another way? Seems strange to have a data action that "acts like a servlet"...
    Thanks for feedback.

  • Calling Oracle Report InSide Web Service Method

    Is there way to call oracle reports inside one of my web service method.
    If yes kindly let me know how we can do this and some documents related to this.
    Thanks
    Robert

    Oracle reports does have a Web API when reports are run from the application server. As a result one way to do what you are asking is to write a Web service that use java.net.URL to invoke the Reports Service Web interface:
    http://otn.oracle.com/products/reports/htdocs/getstart/docs/A92102_01/pbr_run.htm#1005598
    As I understand it, this interface itself is actually being exposed as a Web service in a future release of Oracle9iAS Reports ... I don't know if this is a Oracle9iAS Reports 9.0.4 feature or beyond that. You might try asking on the Reports forum:
    Reports
    Mike.

  • How to add a new filter in an existing web service method (BIWS - WEBI document)

    Hello Experts, we have 7 web service query's connected to a dashboard. Basically it is one WSDL URL and 7 Get Methods...Web service queries are BIWS (via WEBI document instance). There are filters setup for each of these web service methods.
    Recently there was a request to add 2 new fields to the webi document and also the 2 fields need to be included as filters in the 7 methods. I know there is an option to edit the method, but when i edit the method, i cannot find the 2 new fields in list to set as filters.Can anybody help me understand how to add filters to an existiing web service method? I do not want to delete the method and republish the block as web service.
    Any help will be great and points rewarded.
    Thank you
    Ann

    Hi Ann,
    The reason you are not able to see any of the new columns as a option to select in your web service block is because when you have published that block, they were not present. Add these two new objects in your block and publish it again. You will be prompted for duplication content. Select the highlighted block for duplicate and now you can see the new added objects in the filter option. Update and this will overwrite your published block. Please note, web services do appear to behave weirdly when used with dashboards so I request you to please try it in a separate test report first.
    Hope that helps.
    Regards,
    Tanisha

  • How to call Web Services (with javascript) in a view load event ?

    Hello to the expert community,
    I'm looking for a piece of javascript code allowing to call Web Services in a view load event ?
    Any ideas will be really appreciated.
    Regards.
    Have a nice week.

    Thank you for your answer, dongmei.
    It seems that the MethodResultTableDataProvider does not return the response of the web service as a value field if the WSDL contains only one result element.
    E.g. from WSDL of the USWeather Web Service which returns theGetWeatherReportResult string:
    <?xml version="1.0" encoding="utf-8"?>
    <wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.webserviceX.NET" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://www.webserviceX.NET" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
      <wsdl:types>
        <s:schema elementFormDefault="qualified" targetNamespace="http://www.webserviceX.NET">
          <s:element name="GetWeatherReport">
            <s:complexType>
              <s:sequence>
                <s:element minOccurs="0" maxOccurs="1" name="ZipCode" type="s:string" />
              </s:sequence>
            </s:complexType>
          </s:element>
          <s:element name="GetWeatherReportResponse">
            <s:complexType>
              <s:sequence>
                <s:element minOccurs="0" maxOccurs="1" name="GetWeatherReportResult" type="s:string" />
              </s:sequence>
            </s:complexType>
          </s:element>
          <s:element name="string" nillable="true" type="s:string" />
        </s:schema>If I drag the web service method on the page and I should be able to select the response value in the Bind to Data dialog box. But there is no value field. Value fields only occur if the web service returns more than one value.
    The question is how can I get the response GetWeatherReportResult from the service.

  • Access denied Error while calling Web Service form Infopath Form 2010.

    Hi Dear All,
    I have been facing an error while calling an GetUserProfileByName() web service method from InfoPath 2010 from.
    i have FBA(Forms Base Authentication )configured . After Infopath form published to site collection when i select an user from people picker control i want to get Email Id of Selected user for that i am calling getUserProfileByName() Web Method, but 
    i am getting Access denied error code 500.
    Any Help would be more than welcome.
    Thanks.

    Hi,
    Greetings. Please check 
    Check the IE settings. Click Internet Options> Security>Custom level. Make sure that the ‘Access data source across domains’ is enabled. Make sure that you have permission to the web service and to the content which the web service tries to modify.
    For more information, please refer to this site:
    "Access is denied." error in Infopath 2007 form + ASMX: http://us.generation-nt.com/answer/access-denied-error-infopath-2007-form-plus-asmx-help-65808252.html
    Please remember to click 'Mark as Answer' on the answer if it helps you

  • Calling Web service from Java Concurrent Program

    Hi,
    I created a Java concurrent program and created executable. Here is my code.
        public void runProgram(CpContext ctx) {
            String value = "Java Concurrent Program Testing";
            Hello hell = new Hello();
            String returnValue = hell.testURL(value);
            if(returnValue.equalsIgnoreCase("TRUE")){
                ctx.getLogFile().writeln("-- Java Concurrent Program Testing --", 0);
                ctx.getOutFile().writeln("-- Java Concurrent Program Testing --");
                ctx.getReqCompletion().setCompletion(ReqCompletion.NORMAL, "");
            else{
                ctx.getLogFile().writeln("-- Hello World! --", 0);
                ctx.getOutFile().writeln("-- Hello World! --");
                ctx.getReqCompletion().setCompletion(ReqCompletion.NORMAL, "");
        }testURL() call the web service and get the response. but when I am selecting View Output option I am always geting out put as
    -- Hello World! --I tested the logic of calling web service. It giving me out put "true". Here is my Web service calling code
        public String testURL(String Value){
            HttpURLConnection httpConn = null;
            ByteArrayOutputStream bout = null;
            String setWebServiceURLResponse = "";
            String responseString="";
            String outputString = "";
            try{
                httpConn = getHttpConnection();
                bout = new ByteArrayOutputStream();
                String xmlInput = soapBodyStart +
                "<ns1:getTestURL>\n" +
                "            <ns1:URL>"+Value+"</ns1:URL>\n" +
                "        </ns1:getTestURL>"+
                soapBodyEnd;
                byte[] buffer = new byte[xmlInput.length()];
                buffer = xmlInput.getBytes();
                bout.write(buffer);
                byte[] b = bout.toByteArray();
                httpConn = setHttpConnectionRequest(b,httpConn);
                //Read the response.
                InputStreamReader isr = new InputStreamReader(httpConn.getInputStream());
                BufferedReader in = new BufferedReader(isr);
                //Write the SOAP message response to a String.
                while ((responseString = in.readLine()) != null) {
                    outputString = outputString + responseString;
                //Parse the String output to a org.w3c.dom.Document and be able to reach every node with the org.w3c.dom API.
                Document document = parseXmlFile(outputString);
                String formattedSOAPResponse = formatXML(outputString);
                System.out.println("Formatted response = \n" +formattedSOAPResponse);
                //NodeList nodes = document.getElementsByTagName("setWebServiceURLResponse");
                //NodeList nodes = document.getElementsByTagName("getTestURLResponse");
                 NodeList nodes = document.getElementsByTagName("ns0:getTestURLResponse");
                int len = nodes.getLength();
                System.out.println("Inside testURL Node Lenght  = "+ len);
                for(int s=0; s<nodes.getLength() ; s++){
                    Node authenticateResultNode = nodes.item(s);
                    if(authenticateResultNode.getNodeType() == Node.ELEMENT_NODE){
                        Element authenticateResultElement = (Element)authenticateResultNode;
                        //NodeList authenticateResultValueNode = authenticateResultElement.getElementsByTagName("ns0:return");
                        //NodeList authenticateResultValueNode = authenticateResultElement.getElementsByTagName("return");
                         NodeList authenticateResultValueNode = authenticateResultElement.getElementsByTagName("ns0:return");
                        Element authenticateResultValue = (Element)authenticateResultValueNode.item(0);
                        NodeList textFNList = authenticateResultValue.getChildNodes();
                        //System.out.println("Authenticate Result : " + ((Node)textFNList.item(0)).getNodeValue().trim());
                         setWebServiceURLResponse = ((Node)textFNList.item(0)).getNodeValue();
                         //System.out.println("Authenticate Response in getAuthenticate method : " + authenticateresponse);
                    }//end of if clause
                }//end of for loop with s var
                System.out.println("Inside setWebServcieURLToFile response = " + setWebServiceURLResponse);
            catch(Exception e){
                e.printStackTrace();
            return setWebServiceURLResponse;
        }Where I am going wrong ?
    Regards,
    Ajay Sharma

    sample code:
    static string url = "http://my.webservice.url"; ---------------> The actual web service URL
    Call = new Call(url); --------------------------------------------------> The call object used by JAX-RPC
    Object[] params = new Object[]{param1, param2};---------> build the call parameters
    Boolean/Integer/Whatever result = call.invoke("method name", params);------>call the invoke method to get the result

  • Urgent: Calling web service from PL/SQl fails with XML parsing

    Hi,
    I am trying to call a web service from PL/SQL (using SOAP protocol and UTL_HTTP built in Package).I am using Oracle 9i .I am calling from pl/sql block invoking web service method created in java.
    I am getting the below response object as a SOAP protocol, but i couldn't able to parse the SOAP.
    Could you please provide the values of FirstName, LastName and ErrorDescription
    declare
    request_env varchar2(32767);
    v_xml XMLTYPE;
    l_user_first_name varchar2(100);
    l_user_last_name varchar2(100);
    l_error_value varchar2(100);
    begin
    response_env:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
    <UserInfoObjResponse xmlns:axis2ns1="http://www.test.com/services">
    <axis2ns1:FirstName >First Name Output</axis2ns1:FirstName>
    <axis2ns1:LastName>Last Name Output</axis2ns1:LastName>
    <axis2ns1:ErrorDescription />
    </UserInfoObjResponse>
    </soapenv:Body>
    </soapenv:Envelope>';
    dbms_output.put_line('Length of Request:' || length(response_env));
    dbms_output.put_line ('Request: ' || response_env);
    v_xml := XMLTYPE(response_env);
    -- SELECT EXTRACTVALUE(v_xml, '//UserInfoObjResponse/FirstName') INTO l_user_fast_name varchar2(100); FROM DUAL;
    dbms_output.put_line ('l_user_first_name: ' || l_user_first_name);
    dbms_output.put_line ('l_user_last_name : ' || l_user_last_name);
    dbms_output.put_line ('l_error_value: ' || l_error_value);
    end;

    In Oracle 9i:
    SQL> declare
      2    response_env varchar2(32767);
      3    v_xml XMLTYPE;
      4    l_user_first_name varchar2(100);
      5    l_user_last_name varchar2(100);
      6    l_error_value varchar2(100);
      7  begin
      8    response_env:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
      9                     <soapenv:Body>
    10                       <UserInfoObjResponse xmlns:axis2ns1="http://www.test.com/services">
    11                         <axis2ns1:FirstName >First Name Output</axis2ns1:FirstName>
    12                         <axis2ns1:LastName>Last Name Output</axis2ns1:LastName>
    13                         <axis2ns1:ErrorDescription />
    14                       </UserInfoObjResponse>
    15                     </soapenv:Body>
    16                   </soapenv:Envelope>';
    17
    18    dbms_output.put_line('Length of Request:' || length(response_env));
    19  --  dbms_output.put_line ('Request: ' || response_env);
    20
    21    v_xml := XMLTYPE(response_env);
    22
    23    select EXTRACTVALUE(v_xml,'/*:Envelope/*:Body/*:UserInfoObjResponse/*:FirstName/text()') first_name,
    24           EXTRACTVALUE(v_xml,'/*:Envelope/*:Body/*:UserInfoObjResponse/*:LastName/text()') last_name,
    25           EXTRACTVALUE(v_xml,'/*:Envelope/*:Body/*:UserInfoObjResponse/*:ErrorDescription/text()') error_description
    26      into l_user_first_name, l_user_last_name, l_error_value
    27      from dual;
    28
    29    dbms_output.put_line ('l_user_first_name: ' || l_user_first_name);
    30    dbms_output.put_line ('l_user_last_name : ' || l_user_last_name);
    31    dbms_output.put_line ('l_error_value: ' || l_error_value);
    32  end;
    33  /
    Length of Request:530
    l_user_first_name: First Name Output
    l_user_last_name : Last Name Output
    l_error_value:
    PL/SQL procedure successfully completed.In Oracle 10g:
    SQL> declare
      2    response_env varchar2(32767);
      3    v_xml XMLTYPE;
      4    l_user_first_name varchar2(100);
      5    l_user_last_name varchar2(100);
      6    l_error_value varchar2(100);
      7  begin
      8    response_env:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
      9                     <soapenv:Body>
    10                       <UserInfoObjResponse xmlns:axis2ns1="http://www.test.com/services">
    11                         <axis2ns1:FirstName >First Name Output</axis2ns1:FirstName>
    12                         <axis2ns1:LastName>Last Name Output</axis2ns1:LastName>
    13                         <axis2ns1:ErrorDescription />
    14                       </UserInfoObjResponse>
    15                     </soapenv:Body>
    16                   </soapenv:Envelope>';
    17
    18    dbms_output.put_line('Length of Request:' || length(response_env));
    19  --  dbms_output.put_line ('Request: ' || response_env);
    20
    21    v_xml := XMLTYPE(response_env);
    22
    23    select r.*
    24      into l_user_first_name, l_user_last_name, l_error_value
    25    from XMLTABLE('/' PASSING v_xml
    26                  COLUMNS
    27                  first_name varchar2(30) PATH '/*:Envelope/*:Body/*:UserInfoObjResponse/*:FirstName/text()',
    28                  last_name varchar2(30) PATH '/*:Envelope/*:Body/*:UserInfoObjResponse/*:LastName/text()',
    29                  error_description varchar2(30) PATH '/*:Envelope/*:Body/*:UserInfoObjResponse/*:ErrorDescrition/text()'
    30                  ) r;
    31
    32    dbms_output.put_line ('l_user_first_name: ' || l_user_first_name);
    33    dbms_output.put_line ('l_user_last_name : ' || l_user_last_name);
    34    dbms_output.put_line ('l_error_value: ' || l_error_value);
    35  end;
    36  /
    Length of Request:530
    l_user_first_name: First Name Output
    l_user_last_name : Last Name Output
    l_error_value:
    PL/SQL procedure successfully completed.Max
    http://oracleitalia.wordpress.com
    Edited by: Massimo Ruocchio on Feb 14, 2010 11:55 PM
    Added the first one.

Maybe you are looking for