Pragmatically Reload WSDL for WebService

Hey everyone,
I'm new here and i'm starting to try out RIA. I'm currently
working against a little test web service. Pretty simple and trim.
Here's my problem.
I want to seemlessly handle when the web service goes down.
The senario is like this:
1.) WebService goes offline at the web server.
2.) User executes an operation with returns with a ioError
fault.
3.) This error is captured and identified as a
"Disconnection"
4.) Now the user is presented with a modal popup informing
them the web service is down.
5.) A time was started that will test if the web service is
online at a set interval.
6.) When the service is back online, the modal popup is
removed, and the user can continue with their work
My reconnection code is pretty simple. It's:
myWebService.disconnect();
myWebService.loadWSDL();
My assumption is that when you execute the loadWSDL, it will
go out to the server and attempt to download and reload the WSDL.
There is a fault capture on the main webservice so i can detect
when the loadWSDL fails. If it fails, the webserivce is offline so
i keep the modal up. If the loadWSDL can be loaded, the "load"
event is fired for the webservice. I detect this event and remove
the modal popup.
However, the loadWSDL does not go back to the server. It
detects that it has already been loaded, and fires the "load" event
for the webservice.
So my main goal here is to have a way to test if the
webservice is online. I *could* develop a simple webservice
function that simply returns a string if it's online. But i want to
avoid having odd calls like that in my webservice. There has to be
a way you can do this.
Any help would be hugely appreciated.

Still looking for a response on this. So far we've
implemented a webservice call to check if the webservice is active.
But i'd be interested if there's an answer.
I'm hopeing the answer will help me understand why the
WebService object needs to download the WSDL everytime in the first
place.

Similar Messages

  • When we use XML,XSD,WSDL files to create SOA webservices in jdeveloper ,what will happen means internally,how will useful xml ,xsd,wsdl for composite ?

    When we use XML,XSD,WSDL files to create SOA webservices in jdeveloper ,what will happen means internally,how will useful xml ,xsd,wsdl for composite ?
    How xml will send message to XSD then how wsdl interaction then to composite ?

    XSD (XML Schema Definition), is an abstract representation of a XML characteristics.
    The WSDL (Web Services Description Language), describes the functionality offered by your web service.
    You can say what operations your services offers, and describe the messages used for this operations in your XSD.

  • Why should we use WSDL for developing webservices

    I need to develop Webservice Application for our Client .
    I dont know anything about WSDL4J
    Hi from the net i found this
    "The Web Services Description Language for Java Toolkit (WSDL4J) allows the creation, representation, and manipulation of WSDL documents.
    Is the reference implementation for JSR110 'JWSDL' (jcp.org)."
    But anybody please tell me why should we use WSDL for developing webservices ??
    Is there any specific advantage we will get ??
    And Can body please point me a link where to start for working with WSDL4j ?
    Thank you very much

    i seriously doubt you want to use wsdl4j unless you are doing really advanced webservice work. assuming you are developing this webservice from scratch, you basically want to use JAXWS: define an appropriate interface and your value classes, and let JAXWS do the rest. metro is the JAXWS implementation included in the oracle jdk and it has great tutorials and reference documentation online. i'd suggest you start here: http://metro.java.net/getting-started/

  • How to use Fault schema in WSDL for Error Handling in ALSB

    We are not able to view the fault element in our alsb flow under body variable and when we get the error in test console the error comes in bea fault schema,but we want the error in our own defined fault schema.Pls. guide.
    Below are the steps we followed to create a wsdl.
    Steps:
    1. We created a webservice project in workspacestudio and generated a wsdl.
    2. Then we have added a fault element manually in that wsdl.
    3. Now we have generated a webservice from that modified wsdl.
    4. Again we have generated a wsdl from webservice created in step 3.
    5. step 4 wsdl is tested and running well on server.
    When we try to configure that service as Proxy/Business service in ALSB and view the XPATH Expression Editor, we are not able to view Fault element under variable structures under body variable as shown below.But when we see the design view of our running wsdl in workspace studio it shows the fault element.How to get the fault element in variable body so that we can view the error in our logs in our defined Fault schema instead of BEA fault schema.WDSL is enclosed as an attachment.
    Thanks in advance

    Have you tried using the "Log" action in your pipeline proxy and log for $body and $fault. This will defin return the $body and $fault if these were parsed correctly

  • How to publish WSDL as Webservice in XI 3.0

    Hello,
    My Scenario is  SOAP --XI -- R/3(Proxy). XI version is XI 3.0 and SAP R/3 4.7
    Generated a WSDL for SOAP Sender(ID>Tools>Define webservice)
    I want to know  how can i publish this  WSDL as webservice.
    Appericiate your help.
    Srinivas
    Edited by: Srinivas on Apr 20, 2010 11:42 AM

    Generating the WSDL file (as you have already done) and then providing it to the sender application so that they send the message according to the format and to the target URL (your PI system) means that you have published your WSDL.....and this logic remains the same till the latest available version of SAP XI/ PI.....just that when you say SAP PI7.1 it is only addition of functionality on how the WSDLs are published.
    the application team is not required to publish the WSDL....they are required to consume it.
    Regards,
    Abhishek.

  • How to generate WS and WSDL for proper working DS under ALDSP 3.0?

    Hi,
    Ive got small problem with generating WebService and WSDL for proper working DataService in AL Data Service Studio.
    Whats the worse, I cant find any good documentation showing how to do it step by step in the new development enviroment.
    Currently Im doing it like:
    1) right click on DS and then Create Web Service Map
    2) when Im trying to View WSDL for created (in previous point) WS Map, after a while for deployment, I get Error 404--Not Found
    3) when Im trying to Save WSDL As ... , after showing where it should to be saved, nothing happens
    4) At Test Web Service Map option Ive got (in ZIP archive there is error trace from WebLogic console):
    http://localhost:7001/xyz/abc/test/something.ws?WSDL
    failed due to weblogic.testclient.WsdlParseFailedException: Not Found
    My questions are:
    i) how I can generate WS for DS?
    ii) when there will be some tutorials to download for ALDSP 3.0?

    Some new facts about this situation.
    A moment ago Ive made all the things like in edocs:
    http://edocs.bea.com/aldsp/docs30/install/migration.html#wp1081343
    After that problems still exists and what is the worst - the same problem as at the first time.
    So:
    1) Problem of not migrated kind="private" to visibility="private"
    2) Problem of migrating the files encoded in CP1250 if they got charakters encoded in CP1250
    3) I know that proces of migration from multiple imports to the same namespace within XSDs must be done in manual way but problem still exist
    4) There are some issue like this:
    "[ld:xXx_PIDataServices/cache/order/order.ds]: The return type of the read function "{ld:xXx_PIDataServices/cache/order/order}setOrderStatus" with arity 1 does not match the Data Service target (element) type "{services.cache.integration.amg}setOrderOut"."
    When I remove kind="read" from pragma then its going to be valid.
    In short time we will try to contact with our local BEA support.
    PS Right now I was trying to import another project (sample one for Workshop 8.1 - <BEA_HOME>\weblogic81\samples\workshop\SamplesApp) and it also didnt go smoothly :/
    Edited by PiotrGalas at 02/01/2008 4:20 AM

  • Jdeveloper- web service- can't produce wsdl for java List

    Hi-
    I think this is a jdeveoper bug. It looks like the same bug as #4706306 in Jdeveloper 10g bugs.
    There is a workaround suggest to use additional classes in the web service. But it does not work on 11g.
    Details of the problem ........
    I am trying to create a web service and client using jdeveoper 11g.
    For some reason, the wsdl generated from the jdeveoper is incorrect. My java classes used List.
    Apparently, jdeveoper does not like List . I can reproduce the problem using three files as attached.
    the files are 1)Baby.java, 2)Papa.java, and 3)MyCall.java. The webservice is MyCall Class and the web method is getPapa().
    After I created the web service and its wsdl, I then used the wsdl to create a client. then files are generated from the
    wsdl for client . One of the file as in 4)Papa.java has a wrong List<Object>. It should be List<Baby>.
    I can't move forward because of this problem. If any one can help, I'll be very appreciated.
    Thanks!
    Jason
    1) ---- Baby.java-------------------
    package yexp;
    public class Baby
    private String name;
    public void setName(String name)
    this.name = name;
    public String getName()
    return name;
    2) Papa.java ---------------------
    package yexp;
    import java.util.List;
    import java.util.ArrayList;
    public class Papa
    List<Baby> babyList;
    public List<Baby> getBabyList()
    return babyList;
    public void setBabyList(List<Baby> babyList)
    this.babyList = babyList;
    3) MyCall.java ------------------------------------------------
    package yexp;
    import java.util.List;
    import java.util.ArrayList;
    public class MyCall
    public Papa getPapa()
    Baby baby = new Baby();
    baby.setName("mmmBaby");
    List<Baby> babyList = new ArrayList<Baby>();
    babyList.add(baby);
    Papa papa = new Papa();
    papa.setBabyList(babyList);
    return papa;
    4) Papa.java from client ---------------
    aquilo#cat Papa.java
    package z;
    import java.util.ArrayList;
    import java.util.List;
    import javax.xml.bind.annotation.XmlAccessType;
    import javax.xml.bind.annotation.XmlAccessorType;
    import javax.xml.bind.annotation.XmlElement;
    import javax.xml.bind.annotation.XmlType;
    * <p>Java class for papa complex type.
    * <p>The following schema fragment specifies the expected content contained within this class.
    * <pre>
    * &lt;complexType name="papa">
    * &lt;complexContent>
    * &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    * &lt;sequence>
    * &lt;element name="babyList" type="{http://www.w3.org/2001/XMLSchema}anyType" maxOccurs="unbounded" minOccurs="0"/>
    * &lt;/sequence>
    * &lt;/restriction>
    * &lt;/complexContent>
    * &lt;/complexType>
    * </pre>
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlType(name = "papa", propOrder = {
    "babyList"
    public class Papa {
    @XmlElement(nillable = true)
    protected List<Object> babyList; //??????? PROBELM should be List<Baby> babyList
    * Gets the value of the babyList property.
    * <p>
    * This accessor method returns a reference to the live list,
    * not a snapshot. Therefore any modification you make to the
    * returned list will be present inside the JAXB object.
    * This is why there is not a <CODE>set</CODE> method for the babyList property.
    * <p>
    * For example, to add a new item, do as follows:
    * <pre>
    * getBabyList().add(newItem);
    * </pre>
    * <p>
    * Objects of the following type(s) are allowed in the list
    * {@link Object }
    public List<Object> getBabyList() {
    if (babyList == null) {
    babyList = new ArrayList<Object>();
    return this.babyList;
    Edited by: jchen8996 on Apr 5, 2010 8:17 AM

    Try using Collection instead of list so:
    Collection<Baby> babyList = new ArrayList<Baby>();

  • WCF- ( Windows communication Foundation ) New standard for webservice

    Dear Friends,
      Could anybody tell me whether we can call a WCF service from SAP PI?
      WCF (Windows communication Foundation) can be considered as a new standard for webservice.
    Take care,
    Karthik..k

    as of now only file with wsdl extention is supported,

  • Change the end point URL in WSDL for web-service

    Hi All,
    Morning , could someone please help us with this question, we are stuck with this currently.
    In SOA Suite 10g as well 11g we have a jsimple Java class whose one of the methods is exposed as a web service.
    In the project it has created the WSDL as well and have deployed the .ear file to the servers from EM console successfully.
    Now we need to migrate this web service to testing & production environments.
    1. Could someone please let us know the steps as to how do we change the end point url in the WSDL for this web service (present in web content --> WEB-INF/wsdl path in the j-developer project) for migration in case of both 10g (OC4J) as well 11g (WLS) servers.
    2. Also could this change/update be done prior to deployment as well as post deployment as well.
    Looking forward to inputs regards this...as we are stuck with this ..would be very helpful
    Thanks as always for help & guidance..

    Hi
    As Vijay mentioned, you develop a WebService in JDeveloper and test in JDeveloper integrated Weblogic Server say at http://localhost:7101/MyWebService/MyPort?wsdl. Thats it. Once it is working. Export it into a .WAR file. If you have any other supporting EJB JARs etc, put all these into a full blown .EAR at application level. NOW deploy this .EAR or .WAR into any Domain on any host and any port. DOES not matter. That server's host and port will be taken. Infact even if this other domain is Clustered domain, still it will work by giving webserver host and webserver port that sits in front of the cluster.
    I develop my webservices in JDeveloper and test at 7101 port. This .WAR gets deployed in QC Env at qchost:qcport. Same .WAR deployed to UAT at uathost:uatport and finally to prod also at prodhost:prodport.
    Its just the Client (WebService Proxy) that is calling this WebService need to use appropriate host and port based on which Env it is connecting to. For this, simply do not hard code WSDL URL in the java code or anywhere. Simply get it from a .properties file using a key value pair like this.
    WSDL_URL=http://host:port/MyWebService/MyPort?WSDL.
    Now have Environment specific values for above key and put that properties file in that domain root folder. And in your code always refer this key.
    You can use many approaches along the above lines.
    If your WebServies proxy is a webservice adapter say within bpel, still you can modify the value using deployment plan .xml file file while deploying.
    I would not absolutely prefer opening war file from ear and modifying war and updating ear file etc etc. Also do not have multiple EARs for Environment specific. Just have only one single EAR or WAR file that can be deployed to any environment.
    Thanks
    Ravi Jegga

  • Specific features for webservice scenario

    Hi All,
    Do we have any specific features which are used for webserice scenario in XI compared to other platforms (ORACLE, Microsoft, IBM)?
    Regards
    Sara

    Hi Sara,
    In ID you can generate WSDL used for Webservice communication in Tools -> Define Webservice. 
    Regards,
    Sreenivas

  • Inheritance for webservice parameters

    Folks,
    please pardon if this topic has been covered before, but my search has not found much on this specifically.
    I am working on webservices using weblogic 9.1. Starting with an annotated Java bean, using jwsc/jws tasks to generate EJB, etc. All this is being done using ant scripts outside of the workbench.
    I am running into a problem when I try to expose complex types with inheritance as web method parameters. If I have a base class A and classes B and C extend A, when I define webservice method to take A as an argument schema in WSDL does not include declarations for B and C.
    If I create 2 separate methods for B and C, then I get correct WSDL.
    I get the same behaviour if subclassing is involved with member variables of complex types.
    Has anyone solved this problem before?
    Thanks in advance for any tips.

    Hi,
    following link could be helpful for webservice ( OCI) Parameters and configuration..
    SAP Supplier Relationship Management - SAP SRM Open Catalog Interface (B2B-OCI) [original link is broken]
    Thanks
    siva prasad.s

  • Has anyone had to create a WSDL for the UCCX API integration?

    We are struggling with creating a WSDL for the UCCX API for integration with an external webservice, as the UCCX isn't a true webservice.  Has anyone created a WSDL for this type of integration?  Thanks!

    Thank you Gergely!  I don't think I worded this very well.  We have an http trigger that accepts several parameters from the client (see screenshot for example).  The http trigger works with several other scripts and uses the UCCX API to manage an outbound IVR campaign.
    They are asking us for a WSDL for this interaction.  We explained that this is not a true webservice; it is a simple POST but we wanted to put it out to the community to see if anyone had any insight/ideas.  Thank you again for always taking the time to respond!

  • Standard WSDL for Date given the Location

    hi all,
    Is there a standard webservice (WSDL file) for  my requirement?
    My Requirement:
    I give the Location - Country+City.
    I should get the DATE-TIME of that location.
    Could you please help me?
    Thanks
    Arunkumar Ravi.
    PS: Posts will appropriately be rewarded.
    PPS: I've made a concurrent post in Portals Page too just to get a proper reply.

    hi Valery,
    Thanks for this excellent link. It was like a light at the end of the tunnel.
    Is there anything for the whole world (or atleast the important cities/capitals in the world). What you had sent was only for US isn't it?
    or is there any possibility that we extend this WSDL for other cities too?
    Regards
    Ak.

  • Creating WSDL for Java Application/ JSP Page

    I am looking for creating a Webservice(WSDL) for a Java application which connects to the R/3 System Backend. I have tried to connect to the Backend using JCO in JSP page and was successful, but I need to generate a WSDL file which when consumed performs the connection and looks up for the data in the Backend. The FrontEnd can be a JSP application or a Java Application in NetWeaver.

    The easiest thing to do is put it in a JAR file with an appropriate manifest. That way it retains cross-platform functionality, which is kind of the point of writing things in Java. The JAR file will be double-clickable.
    If you absolutely must put it in an .exe for some reason, there are applications on the web that will do it.
    Either way, a google search is your next step.
    Drake

  • How to generate wsdl for complex type using wscompile?

    Hi
    Since couple of days I am trying to generate the the wsdl for following classes
    abstract class Key implements serializable{
    class sikeKey extends Key{
    int siteKey;
    class AddressKey extends siteKey{
    int addressId;
    class Model{
    AddressKey key = new AddressKey();
    }I am using following ant script for wscompile
          <wscompile
              fork= "true"
              base="${dest.dir}/war/WEB-INF/classes"
              server="true"   
              features="wsi"
              mapping="${dest.dir}/war/WEB-INF/Address_Mapping.xml"
              sourceBase="${war.dir}/WEB-INF/classes"
              optimize="false"
              debug="true"
              keep="false"
              verbose="true"
              xPrintStackTrace="true"
              config="${acws-config-dir}/Address_Config.xml">
              <classpath>
                            <pathelement path="${acws.classpath}"/>
                            <pathelement path="${war.dir}/WEB-INF/classes"/>
                   </classpath>
          </wscompile>
    <taskdef name="wscompile" classname="com.sun.xml.rpc.tools.ant.Wscompile">
        <classpath path="${acws.classpath}"/>
    </taskdef>It generates the wsdl but without all complex type.
    <complexType name="AddressWebServiceModel">
    <sequence>
    <element name="addKey" type="tns:AddressKey" nillable="true"/>
    </sequence>
    </complexType>
    <complexType name="AddressKey">
    <sequence>
    <element name="siteID" type="string" nillable="true"/>
    <element name="addressID" type="int"/>
    </sequence>
    </complexType>Here it should create the right mapping for classes siteKey so that the webservice call can be mapped with the response of this Model.
    Any one know how to configure the above script for proper mapping of complex type?

    Add the concrete subclasses of Key in an <AddtionalType> element in your config.xm. file.

Maybe you are looking for

  • FM for Creating Price Calcualtion(VKP5)

    Hi all, I want to A FM for Creating Price Calcualtion(VKP5) ... my scenario is to give validity date for pricing..... thnx Rohit

  • Viewing files in columns, how do i expand the columns?

    I like to keep my settings to where i view the files in columns so when you click a folder, it opens up in the next column and so on. I was doing this on 10.2 and the columns are nice and wide being we take advantage of the extended file names. on ou

  • 802.1x multiple-authentication issue

    Hey, I'm configuring 802.1x multiple authenticatino with C3560G. Without any timer changes, user's mac address is registered by static on mac address table. The issue is that if authenticated user moves to non-802.1x port, this user can't access netw

  • Multiple QueueReceiver for bundled Sun One MQ?

    Dear all, I am using the J2EE 1.4 SDK with its bundled Sun One MQ as the JMS server. When I tried to use multiple receivers on the same queue I got the following error: javax.jms.ResourceAllocationException: [C4073]: A JMS destination limit was reach

  • Changing Tab Text

    How can I change programmaticly the Text of the Tabs from a Tab Control? I was looking for a property like "Strings[]" from the "ring-control" I need a soloution to to dynamic change the Tab control during execution. Any idea?