RMI or Web Service to implement  P2P ????

Hi mates
Actually I'm going to develop an P2P information sharing system and I'm confused whether I use RMI or Web Service to implement this system.
I'll relay on XML document to be sent among peers .
could you help me please to select on of those two methods : RMI or Web Service .
for Web Service : Do I have to install Tomcat server in each peer ?
Thanks a lot .
Yasseen

yasseen wrote:
Are you sure ?
I get myself ready to use Web service to implement my system but you shocked me !Yes, I'm sure. (see Wiki [*Peer-to-peer*|http://en.wikipedia.org/wiki/Peer-to-peer])
Web services uses [*SOAP*|http://en.wikipedia.org/wiki/SOAP].
Regards,
Joe

Similar Messages

  • Socket, rmi or web services

    Hi,
    I am gunna use an applet to create a multi user online game. The game will be turn based (board game).
    To create a connection between two clients (through a server) can anyone advise whether to use sockets, rmi or web services?
    Thanks.

    use the one you know best.
    if you don't know any of them, it doesn't much matter. what are the advantages of each?
    (1) sockets appear simple, but you have to do all the work. lowest level of all. can't go through a firewall.
    (2) RMI will feel more like dealing with objects. you just call methods on objects; you don't have to know that it's a proxy. you don't need an app server for RMI. it'll be harder to go through firewalls unless you know how to do HTTP tunnelling and RMI over IIOP.
    (3) Web services are XML and HTTP based. You can go through firewalls to connect to the server without a problem. Complex if you don't know Web services.
    %

  • How can my web service class implement an interface

    I am not able to write :
    webserviceclass implements interface
    I am using servicegen script to convert java file to the web service.But then also,if i add
    javaClassComponents="javaclass1,interface1"
    It is saying interface1 does not have any no arg constructor,so can't used in the web service.
    kindly tell how can i code my web service to implement an interface.

    This forum focuses on end-user support. You can find more web development help on the [http://forums.mozillazine.org/viewforum.php?f=25 mozillaZine Web Development board]. Separate forum, separate registration. Please note the tips in the Sticky Post at the top of the forum before posting.
    That said... Firefox honors the setting autocomplete="off" in the form tag. When this attribute is set, users should not be prompted to save the username/password, and it should not be filled automatically. (Is this what wasn't working??)
    https://developer.mozilla.org/en/How_to_Turn_Off_Form_Autocompletion
    Knowledgeable users can bypass this setting by running a script to strip this attribute. I doubt that very many users would do that, but if people have to log in very frequently, it is more likely to happen. Users also may use add-ons that manage passwords, and those add-ons might not honor the autcomplete="off" setting. I haven't used any such add-ons, so I don't know the situation there.
    I'm sure this isn't completely satisfactory but hopefully it helps to some extent.

  • RMI and Web services

    Hi,
    I have a question about the scalability of RMI with Oracle JVM.
    What we intend to do is have about 10 SOAP webservices all interacting with our Oracle 8i instance. One of the developers suggestion is to use the Sun Java/SOAP Toolkit to make the WS stub code on UNIX and write java classes on the UNIX box to talk to more Java Classes in Oracle (using RMI), which in turn then pass data to Oracle PL/SQL packages which do the main bulk of the work (and the same of course happens in reverse). Our webservices will be called very often however (maybe about 1 call every 10 secs) at the moment possibly increasing to several calls per second in busy periods.
    However i have heard that RMI really does not scale well at all (in fact another group of people I've talked to in our organisation advise us not to use it, and claim Oracle advise the same).
    My suggestion was to handle it all in PL/SQL and use the utl_tcp package to handle the http traffic (with the possibility of migrating to Oracle 9i + utl_http). (along the same lines as http://otn.oracle.com/tech/webservices/htdocs/samples/dbwebservice/DBWebServices_PLSQL.html)
    Any suggestions on this would be most appreciated.
    Thanks.

    In general I would concur with your thoughts on RMI. For some doc backup check out two pieces:
    http://download-west.oracle.com/docs/cd/B10501_01/java.920/a96656/invokeap.htm#1011867
    and then also the de-support of J2EE characteristics in general:
    http://download-west.oracle.com/docs/cd/B10501_01/java.920/a96656/intro.htm#1006743
    The basic focus of the Java engine is on J2SE applications.
    To answer the SOAP approach, the development effort is primarily focussing on using the SOAP Java stack and loading it into the database as per this paper and example:
    Paper: http://otn.oracle.com/tech/webservices/htdocs/dbwebservices/Database_Web_Services.pdf
    Example:
    http://otn.oracle.com/sample_code/tech/java/jsp/samples/wsclient/Abstract.html
    This gives the same result as the PL/SQL example you point to but on a service by service approach a fairly simplified development approach. This should work in 8i as well (use these instructions to set up the stack: http://otn.oracle.com/sample_code/tech/java/jsp/loadjars.htl)
    That said, the PL/SQL approach should also work (though like you say it needs to be tailored to 8i's PL/SQL capabilities) but you don't get much help from the product beyond UTL_HTTP whereas the Java approach gives a pre-built infrastructure that can also be upgraded as we move to JAX-RPC, the emerging standardized Java approach to implementing Web services.
    Mike.

  • RMI v Web Services

    hi Guys
    can anybody tell me why developers always prefer to use Web Service instead of RMI
    Thank

    Makes their CV (resume) more buzzword-compliant and impressive
    But seriously, RMI allows Java apps to invoke methods on other Java apps. Web services are language-agnostic, so Java apps can integrate with C++, or PERL or any other language for which there exists a web services API. Other times, RMI cannot be used because, for instance, the application server doesn't allow it. Web services can be a way around this (but not the only way)
    You hit on an important point, though, which my seemingly jokey initial response addresses. Oftentimes, developers will use web services where RMI would have sufficed, and then claim it's "in case we want to talk to other langauges". In fact, that's often not a requirement, and the developers in question have over-engineered the solution simply in order to use web services for the sake of it, hence my response. I call that sort of thinking "CV-driven development" - using a technology so that you can say you have used it, rather than to satisfy an actual business or technical requirement

  • Where should I place the web service client implementation?

    Hi,
    I created a web service client, and some java classes are automatically generated like stub, servicelocator, proxy...
    I wrote the client code to access and invoke a web service.Where should I place this code.
    Thanks.

    pls see Left outer join in Infoset

  • RMI exception calling web service from proxy class

    I am getting the following error attempting to call a web service from a proxy. It appears to relate to the type of objects I am trying to send vs the type that is expected. Following the exception I am adding a copy of the control where calling the web service is sucessful, a copy of the proxy class that I am using to make this unsucessful call, and the controller.jpf that has the formBean where I am creating my objects
    Caught Exception Calling the Web Service from the Proxy. The Exception is the f
    ollowing: java.rmi.RemoteException: web service invoke failed: javax.xml.soap.SO
    APException: failed to serialize class org.openuri.www.CreateAccountCheckingReq
    uestweblogic.xml.schema.binding.SerializationException: type mapping lookup fail
    ure on class=class controls.CheckingService$anyType TypeMapping=TYPEMAPPING SIZE
    =5
    ENTRY 1:
    class: org.openuri.www.CreateAccountCheckingResponse
    xsd_type: ['http://www.openuri.org/']:lcl0:CreateAccountCheckingResponse
    ser: org.openuri.www.CreateAccountCheckingResponseCodec@c0f4da
    deser: org.openuri.www.CreateAccountCheckingResponseCodec@b1dd4
    ENTRY 2:
    class: org.openuri.www.FundingInfoAnonType
    xsd_type: ['http://www.openuri.org/']:lcl0:FundingInfoAnonType
    ser: org.openuri.www.FundingInfoAnonTypeCodec@1d36711
    deser: org.openuri.www.FundingInfoAnonTypeCodec@13a59e
    ENTRY 3:
    class: org.openuri.www.AccountInfoAnonType
    xsd_type: ['http://www.openuri.org/']:lcl0:AccountInfoAnonType
    ser: org.openuri.www.AccountInfoAnonTypeCodec@1de5959
    deser: org.openuri.www.AccountInfoAnonTypeCodec@bbf788
    ENTRY 4:
    class: org.openuri.www.CustomerInfoAnonType
    xsd_type: ['http://www.openuri.org/']:lcl0:CustomerInfoAnonType
    ser: org.openuri.www.CustomerInfoAnonTypeCodec@7824f9
    deser: org.openuri.www.CustomerInfoAnonTypeCodec@1c35fe1
    ENTRY 5:
    class: org.openuri.www.CreateAccountCheckingRequest
    xsd_type: ['http://www.openuri.org/']:lcl0:CreateAccountCheckingRequest
    ser: org.openuri.www.CreateAccountCheckingRequestCodec@1cbcd7b
    deser: org.openuri.www.CreateAccountCheckingRequestCodec@11f60ce
    ; nested exception is:
    javax.xml.soap.SOAPException: failed to serialize class org.openuri.www
    .CreateAccountCheckingRequestweblogic.xml.schema.binding.SerializationException:
    type mapping lookup failure on class=class controls.CheckingService$anyType Typ
    eMapping=TYPEMAPPING SIZE=5
    ENTRY 1:
    class: org.openuri.www.CreateAccountCheckingResponse
    xsd_type: ['http://www.openuri.org/']:lcl0:CreateAccountCheckingResponse
    ser: org.openuri.www.CreateAccountCheckingResponseCodec@c0f4da
    deser: org.openuri.www.CreateAccountCheckingResponseCodec@b1dd4
    ENTRY 2:
    class: org.openuri.www.FundingInfoAnonType
    xsd_type: ['http://www.openuri.org/']:lcl0:FundingInfoAnonType
    ser: org.openuri.www.FundingInfoAnonTypeCodec@1d36711
    deser: org.openuri.www.FundingInfoAnonTypeCodec@13a59e
    ENTRY 3:
    class: org.openuri.www.AccountInfoAnonType
    xsd_type: ['http://www.openuri.org/']:lcl0:AccountInfoAnonType
    ser: org.openuri.www.AccountInfoAnonTypeCodec@1de5959
    deser: org.openuri.www.AccountInfoAnonTypeCodec@bbf788
    ENTRY 4:
    class: org.openuri.www.CustomerInfoAnonType
    xsd_type: ['http://www.openuri.org/']:lcl0:CustomerInfoAnonType
    ser: org.openuri.www.CustomerInfoAnonTypeCodec@7824f9
    deser: org.openuri.www.CustomerInfoAnonTypeCodec@1c35fe1
    ENTRY 5:
    class: org.openuri.www.CreateAccountCheckingRequest
    xsd_type: ['http://www.openuri.org/']:lcl0:CreateAccountCheckingRequest
    ser: org.openuri.www.CreateAccountCheckingRequestCodec@1cbcd7b
    deser: org.openuri.www.CreateAccountCheckingRequestCodec@11f60ce
    Java Control for the web service:
    package controls;
    import weblogic.webservice.context.WebServiceContext;
    * @jc:location http-url="http://localhost:7001/Checking.jws"
    * @jc:wsdl file="#CheckingWsdl"
    * @jc:handler callback="MessageHandler" operation="MessageHandler"
    public interface CheckingService extends com.bea.control.ControlExtension, com.bea.control.ServiceControl
    public static class CustomerInfo
    implements java.io.Serializable
    public java.lang.String FirstName;
    public java.lang.String LastName;
    public java.lang.String MiddleName;
    public int SSN;
    public int CustomerNumber;
    public java.util.Calendar CreationDate;
    public java.util.Calendar LastModifiedDate;
    public static class FundingInfo
    implements java.io.Serializable
    public float Amount;
    public java.util.Calendar CurrentDate;
    public int AccountNumber;
    public static class anyType
    implements java.io.Serializable
    public com.bea.xml.XmlObject[] t;
    public static class AccountInfo
    implements java.io.Serializable
    public int AccountNumber;
    public float Balance;
    public int CustomerNumber;
    public java.util.Calendar LastModifiedDate;
    public WebServiceContext context = CheckingService.context;
    * @jc:protocol form-post="false" form-get="false"
    public AccountInfo CreateAccountChecking (CustomerInfo CustomerInfo, FundingInfo FundingInfo, anyType CommonHeader);
    static final long serialVersionUID = 1L;
    /** @common:define name="CheckingWsdl" value::
    <?xml version="1.0" encoding="utf-8"?>
    <!-- @editor-info:link autogen="false" source="" -->
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/" xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.openuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.openuri.org/">
    <types>
    <s:schema targetNamespace="http://www.openuri.org/" xmlns:s="http://www.w3.org/2001/XMLSchema">
    <s:element name="CreateAccountCheckingRequest">
    <s:complexType>
    <s:sequence>
    <s:element name="CustomerInfo">
    <s:complexType>
    <s:sequence>
    <s:element name="FirstName" type="s:string" nillable="false"/>
    <s:element name="LastName" type="s:string" nillable="false"/>
    <s:element name="MiddleName" type="s:string" nillable="true"/>
    <s:element name="SSN" type="s:int"/>
    <s:element name="CustomerNumber" type="s:int"/>
    <s:element name="CreationDate" type="s:dateTime"/>
    <s:element name="LastModifiedDate" type="s:dateTime"/>
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="FundingInfo">
    <s:complexType>
    <s:sequence>
    <s:element name="Amount" type="s:float"/>
    <s:element name="CurrentDate" type="s:dateTime"/>
    <s:element name="AccountNumber" type="s:int"/>
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="CommonHeader" type="s:anyType"/>
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="CreateAccountCheckingResponse">
    <s:complexType>
    <s:sequence>
    <s:element name="AccountInfo">
    <s:complexType>
    <s:sequence>
    <s:element name="AccountNumber" type="s:int"/>
         <s:element name="Balance" type="s:float"/>
         <s:element name="CustomerNumber" type="s:int"/>
         <s:element name="LastModifiedDate" type="s:dateTime"/>
    </s:sequence>
    </s:complexType>
    </s:element>
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="string" nillable="true" type="s:string"/>
    </s:schema>
    </types>
    <message name="CreateAccountCheckingSoapIn">
    <part name="parameters" element="s0:CreateAccountCheckingRequest"/>
    </message>
    <message name="CreateAccountCheckingSoapOut">
    <part name="parameters" element="s0:CreateAccountCheckingResponse"/>
    </message>
    <portType name="CheckingSoap">
    <operation name="CreateAccountChecking">
    <input message="s0:CreateAccountCheckingSoapIn"/>
    <output message="s0:CreateAccountCheckingSoapOut"/>
    </operation>
    </portType>
    <binding name="CheckingSoap" type="s0:CheckingSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <operation name="CreateAccountChecking">
    <soap:operation soapAction="http://www.openuri.org/CreateAccountChecking" style="document"/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    </operation>
    </binding>
    <service name="Checking">
    <port name="CheckingSoap" binding="s0:CheckingSoap">
    <soap:address location="http://localhost:7001/Checking.jws"/>
    </port>
    </service>
    </definitions>
    FOLLOWING IS THE PROXY CLASS THAT IS UNSUCCESSFUL
    import controls.CheckingService.anyType;
    import java.util.ArrayList;
    import java.util.List;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.handler.HandlerInfo;
    import javax.xml.rpc.handler.HandlerRegistry;
    import org.openuri.CreateAccountCheckingResponseDocument.CreateAccountCheckingResponse;
    import org.openuri.www.CustomerInfoAnonType;
    import org.openuri.www.FundingInfoAnonType;
    import weblogic.jws.proxies.*;
    import weblogic.webservice.context.WebServiceContext;
    import weblogic.webservice.context.WebServiceSession;
    import weblogic.webservice.core.handler.WSSEClientHandler;
    import weblogic.webservice.tools.pagegen.result;
    import weblogic.xml.security.UserInfo;
    import weblogic.xml.security.wsse.Security;
    import weblogic.xml.security.wsse.SecurityElementFactory;
    //import weblogic.jws.proxies.WebServiceB;
    //import weblogic.jws.proxies.WebServiceB_Impl;
    //import weblogic.jws.proxies.WebServiceBSoap;
    public class CheckingWSProxy
    public static void CallWS(Controller.CreateAccountCheckingForm form)
    String user;
    String pass;
    try{
    * Instantiate the main proxy class. The proxy class has the same name as the
    * web service, with "_Impl" appended.
    Checking myservice = new Checking_Impl("http://localhost:7001/ConsumerAccountApp/schemas/CheckingService.wsdl");
    WebServiceContext context = myservice.context();
    WebServiceSession session = context.getSession();
    * Registers a handler for the SOAP message traffic.
    HandlerRegistry registry = myservice.getHandlerRegistry();
    List list = new ArrayList();
    list.add(new HandlerInfo(WSSEClientHandler.class, null, null));
    registry.setHandlerChain(new QName("Checking"), list);
    * Set the username and password token for SOAP message sent from the client, through
    * the proxy, to the web service.
    user = form.getUsername();
    pass = form.getPassword();
    UserInfo ui = new UserInfo(user, pass);
    session.setAttribute(WSSEClientHandler.REQUEST_USERINFO, ui);
    * Adds the username / password token to the SOAP header.
    SecurityElementFactory factory = SecurityElementFactory.getDefaultFactory();
    Security security = factory.createSecurity(null);
    security.addToken(ui);
    session.setAttribute(WSSEClientHandler.REQUEST_SECURITY, security);
    * Get the protocol-specific proxy class.
    CheckingSoap msg=myservice.getCheckingSoap();
    * Invoke the web service method
    msg.createAccountChecking((CustomerInfoAnonType)form.getProxyCustomerInfo(), (FundingInfoAnonType)form.getProxyFundingInfo(), (Object)form.get_CommonHeader());
    catch (Exception ex)
    System.out.println("Caught Exception Calling the Web Service from the Proxy. The Exception is the following: " + ex.toString());
    FOLLOWING IS THE FORMBEAN IN THE CONTROLLER.JPF FILE
    * FormData get and set methods may be overwritten by the Form Bean editor.
    public static class CreateAccountCheckingForm extends FormData
    private anyType _CommonHeader;
    private controls.CheckingService.FundingInfo _FundingInfo;
    private controls.CheckingService.CustomerInfo _CustomerInfo;
    private java.util.Date dOut;
    private java.util.Calendar cOut;
    private CustomerInfo proxyCustomerInfo;
    private FundingInfo proxyFundingInfo;
    private String stringDate;
    private String currentDate;
    private String lastModifiedDate;
    private String creationDate;
    private String systemMessage;
    private String username;
    private String password;
    private String accountType;
    private String trashTransferAccount;
    private String trashAccountNumber;
    private boolean secureFlag;
    public void set_CustomerInfo(controls.CheckingService.CustomerInfo _CustomerInfo)
    _CustomerInfo.CreationDate = parseDate(getCreationDate());
    _CustomerInfo.LastModifiedDate = parseDate(getLastModifiedDate());
    this._CustomerInfo = _CustomerInfo;
    public controls.CheckingService.CustomerInfo get_CustomerInfo()
    if(this._CustomerInfo == null)
    this._CustomerInfo = new controls.CheckingService.CustomerInfo();
    _CustomerInfo.CreationDate = dateNow();
    _CustomerInfo.LastModifiedDate = dateNow();              
    return this._CustomerInfo;
    public CustomerInfo getProxyCustomerInfo()
    this.proxyCustomerInfo = (CustomerInfo)this._CustomerInfo;
    return this.proxyCustomerInfo;
    public void set_FundingInfo(controls.CheckingService.FundingInfo _FundingInfo)
    _FundingInfo.CurrentDate = parseDate(getCurrentDate());
    this._FundingInfo = _FundingInfo;
    public controls.CheckingService.FundingInfo get_FundingInfo()
    if(this._FundingInfo == null)
    this._FundingInfo = new controls.CheckingService.FundingInfo();
    _FundingInfo.CurrentDate = dateNow();
    return this._FundingInfo;
    public FundingInfo getProxyFundingInfo()
    this.proxyFundingInfo = (FundingInfo)this._FundingInfo;
    return this.proxyFundingInfo;
    public void set_CommonHeader(anyType _CommonHeader)
    this._CommonHeader = _CommonHeader;
    public anyType get_CommonHeader()
    if(this._CommonHeader == null)
    this._CommonHeader = new anyType();
    return this._CommonHeader;
    public java.util.Calendar dateNow()
    this.dOut = new Date();
    Calendar cOut = this.cOut.getInstance();
    cOut.setTime(this.dOut);
    this.cOut = cOut;
    return this.cOut;
    public java.util.Calendar parseDate( String strDate )
    SimpleDateFormat df4 = new SimpleDateFormat( "MM/dd/yyyy" );
    Calendar cOut = this.cOut;
    df4.setLenient( false );
    try
    this.dOut = df4.parse( strDate );
    } catch ( ParseException e )
    cOut.getInstance();
    cOut.setTime(dOut);
    this.cOut = cOut;
    return this.cOut;
    public void setStringDate( String stringDate )
    this.stringDate = stringDate;
    public String getStringDate()
    return this.stringDate;
    public void setCurrentDate( String currentDate )
    this.currentDate = currentDate;
    public String getCurrentDate()
    SimpleDateFormat df4 = new SimpleDateFormat( "MM/dd/yyyy" );
    this.currentDate = df4.format(_FundingInfo.CurrentDate.getTime());
    return this.currentDate;
    public void setLastModifiedDate( String lastModifiedDate )
    this.lastModifiedDate = lastModifiedDate;
    public String getLastModifiedDate()
    SimpleDateFormat df4 = new SimpleDateFormat( "MM/dd/yyyy" );
    this.lastModifiedDate = df4.format(_CustomerInfo.LastModifiedDate.getTime());
    return this.lastModifiedDate;
    public void setCreationDate( String creationDate )
    this.creationDate = creationDate;
    public String getCreationDate()
    SimpleDateFormat df4 = new SimpleDateFormat( "MM/dd/yyyy" );
    this.creationDate = df4.format(_CustomerInfo.CreationDate.getTime());
    return this.creationDate;
    public void setUsername( String username )
    this.username = username;
    public String getUsername()
    return this.username;
    public void setPassword( String password )
    this.password = password;
    public String getPassword()
    return this.password;
    public void setAccountType( String accountType )
    this.accountType = accountType;
    public String getAccountType()
    return this.accountType;
    public void setTrashTransferAccount( String trashTransferAccount )
    this.trashTransferAccount = trashTransferAccount;
    public String getTrashTransferAccount()
    return this.trashTransferAccount;
    public void setTrashAccountNumber( String trashAccountNumber )
    this.trashAccountNumber = trashAccountNumber;
    public String getTrashAccountNumber()
    return this.trashAccountNumber;
    public void setSystemMessage( String systemMessage )
    this.systemMessage = systemMessage;
    public String getSystemMessage()
    return this.systemMessage;
    public void setSecureFlag( boolean secureFlag )
    this.secureFlag = secureFlag;
    public boolean getSecureFlag()
    return this.secureFlag;
    }

    This exception means that xml namespaces are different.
    Etc. soap has xml element which doesn't belong to namespace of parent xml element and namespace is set without prefix.
    I had such problem.
    Try to set namespace prefix for this element.
    Example:
    <el1>
    <el2 xmlns="http://..."/>
    </el1>
    Should be
    <el1>
    <q:el2 xmlns:q="http://..."/>
    </el1>

  • Implementing authentication for web services

    Hi all,
    I'm struggling trying to guess how to implement basic HTTP authentication as well as using certificates in order to apply HTTPS, for some web services we've created, running on the Oracle Application Server 10.1.12. The web services were implemented using JDeveloper 9.0.4. Any help would be very appreciated.
    Thanks in advanced and regards,
    Luis

    Hi,
    But, I need to develop the web services logon method using WSDL which generated the LogonBindingImpl.java, instead of web services using EJB bean.
    Besides, the Web Service logon method (LogonBindingImpl.java) need to accept the input user name and password to check with the user name and password that stored in database table through the EJB bean. If checking successful, client program is allowed to invoke other WebServices method, else login failed exception need to be thrown when client calling other web services methods.
    Appreciate the advice here on how to achieve that. Thanks.

  • Is there an Web Services implementation (JSR172) for Pocket Pc?

    Hi,
    I'm currently using IBMs J9 MIDP2.0 jvm but can't seem to figure out where to find an web services (jsr172) implementation for PocketPC. Does it even exist? Does IBM provide one?
    I have tried to update WSDD, and this way I managed to download Web Services, bur for x86 and Palm only.
    I've also downloaded the reference implementation from Sun, but this is said to support CLDC 1.0.4 only, stability is not guaranteed on CLDC1.1.
    Thank you,
    Regards Andreas

    It's not an easy question to answer. So many other variables.
    Mac or PC, high speed cable versus lower connection speeds. Network traffic and the speed of your server also play a big part in your visitors experience.
    Add to those your desire to play back a file type that requires the viewer to have a very fast computer. I'd guess that less than a third of the computers in use can properly play most HD files (even the small sized ones).
    Your Mac is a monster! What you view on it isn't close to what I would see on my Mac mini.
    I would suggest you first figure out a display size of your file. Think small.
    I (personally) would avoid H.264 unless you know your target audience would only be using "high end" equipment. Hard to pick your audience for a Web based file.
    There are html "tricks" that can change the display size of your source movie. If you used a 480X360 (4:3 aspect) source you could "bump up" the display to 800X600 without too much loss in visual quality. Those "tags" are scale="tofit" and the to fit size is your height and width used in the html code (not the source file). Saves bandwidth and gives a better user experience.
    Since your file will be "downloaded" (not streamed) you could instruct your visitors to do some other work while your file downloads. Neck stretches, clean their monitor or pour another cup of coffee.
    If your goal is HD your visitors must know that these files are huge and that they take a very modern computer with plenty of horsepower.
    Your only other option is to reduce the file to more "standard" definition.

  • Implementation oF messageQ in java web services

    Hi All,
    Can any one tell me how one can implement MSMQ in java for handling web service request and response.
    Thanks in Advance
    Harshal

    I am really thankful, for your response.
    Ans
    1) Web services are implementted in java using apache cxf 2.2.3 framework and It is running on weblogic werver 10.3 and 10.3.4.
    2) No, I know your according to call back service concept but instead of this we are having WSDL URL where we need to send response back.
    3) Yes, currently we are processing in thread based processing (i.e. for each request we are creating one thread which will process it completely), Which may causes database dead lock, so to remove this we are willing to process requests sequentially.(using MessageQ)
    For my knowledge, I am having little confusion that Is MessageQ and JMS are same?
    Thanks,
    Harshal

  • Any difference in creating a web service from a java class or session bean?

    Hi,
    The JDeveloper tutorial at http://www.oracle.com/technology/obe/obe1013jdev/10131/devdepandmanagingws/devdepandmanagingws.htm demonstrates creating a web service from a plain java class. I'm wondering:
    - Is it possible to create a web service from a stateless session bean instead of a java class? If so, what's the proper way to do this in JDeveloper? When I tried doing so in JDeveloper 10.1.3.0.4 (SU5) using the J2EE Web Service wizard, the wizard did not list the session bean in the Component To Publish dropdown (it does list any java classes available in the project). I can proceed by manually typing in the name of the session bean. After the wizard completes though, the @Stateless annotation that had been in my session bean class code is removed and replaced by a @WebService annotation. The end result is that it looks like it made no difference whether I had tried to create the web service from a session bean or plain java class as the annotations in the resulting web service code are the same (although if I had started from a session bean, the class for the web service still implements the Local/Remote EJB interface that the session bean originally implemented).
    - Assuming it's possible to create a web service from a stateless session bean, is there any advantage/disadvantage creating a web service from a java class vs a stateless session bean? I'm creating the web service from scratch so I also need to either build the java class or stateless session bean the web service would be based on from scratch too.
    Thanks for any ideas about this.

    Hi,
    EJB Session beans (EJB 3.0) are deployed as WebServices by annotating the class with @WebService and the methds with @WebMethod (both tags require you to add the JSR-181 library to your project (available in the JDeveloper list of libraries)). Unlike the J2E WebService, the EJB session bean service is turned into a WebService upon deployment. This means you obtain teh WSDL file after deployment
    - Assuming it's possible to create a web service from a stateless session bean, is there any advantage/disadvantage creating a web service from a java class vs a stateless session bean?
    The difference is that EJB Session bean based web services are integrated with the J2EE container, which means that they can leverage container services like transaction handling, data sources, security, JMS etc.
    Frank

  • AxisFault seen while invoking document style web service

    I am seeing the following stacktrace when I try to invoke a document-style web service.
    <partnerRole name="MyWebService1_Role">
    <ServiceName>{http://idm.oracle.com/}MyWebService1</ServiceName>
    <PortType>{http://idm.oracle.com/}MyWebService1</PortType>
    <Address>null</Address>
    </partnerRole>
    <conversationId>bpel://localhost/default/ProvisioningFromDAS~1.0/4202-BpInv0-BpSeq0.3-3</conversationId>
    <properties>{}</properties>
    </partnerLink>
    <2005-09-06 09:23:37,650> <DEBUG> <default.collaxa.cube.ws> <WSIFInvocationHandler::invoke> Fault happened
    AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
    faultSubcode:
    faultString: caught exception while handling request: expected element is missing: {http://idm.oracle.com/}attribute
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:caught exception while handling request: expected element is missing: {http://idm.oracle.com/}attribute
    at org.collaxa.thirdparty.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
    at org.collaxa.thirdparty.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
    at org.collaxa.thirdparty.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1083)
    at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
    at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    What could this mean ?

    Hi,
    I am getting a similar issue. I created a Document-style/literal webservice and deployed on Weblogic 9.2 . Then I generated client stubs using clientgen. I get the following exception stack trace:
    java.rmi.RemoteException: web service invoke failed: javax.xml.soap.SOAPException:
    failed to serialize class java.lang.Objectweblogic.xml.schema.binding.SerializationException: type mapping lookup failure on
    class=class com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl TypeMapping=TYPEMAPPING SIZE=3
    ENTRY 1:
    class: java.lang.Object
    xsd_type: ['http://xmlns.ozarkexpress.com/business/sell']:stns:echoDocumentResponse
    ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@1125127
    deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@18dfef8
    ENTRY 2:
    class: java.lang.Object
    xsd_type: ['http://xmlns.ozarkexpress.com/business/sell']:stns:echoDocument
    ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@15e83f9
    deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@2a5330
    ENTRY 3:
    class: java.lang.Object
    xsd_type: ['http://www.w3.org/2001/XMLSchema']:xsd:anyType
    ser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@bb7465
    deser: weblogic.xml.schema.binding.internal.builtin.XSDAnyCodec@d6c16c

  • Setting timeout in Oracle Web Service Callouts

    We have a 10.1.0.4 Enterprise DB with dbwsclient.jar loaded. Currently using the database callouts. The problem is there seems to be no timeout when the called web service does not respond. I did not see a setting for the socket timeout in the code produced by JPublisher.
    Thanks

    Hi,
    Where the properties need to be put and how can they be read really depends on how your Web Service is implemented. What is the WS based on - EJB, POJO, PL/SQL, JMS...?
    Yogesh

  • Accessing config information in XML file in a Weblogic web service (JWS)

    Problem:
    I have implemented a web service for sending emails and pages via Java Mail and SNPP respectively using WebLogic Workshop on the BEA WebLogic 8.1 platform. In the service, I use certain pieces of information that are currently stored in an XML file on disk. Also, in its current state, the web service is implemented with public methods directly in the .jws Java file and not as a session bean. The file read from disk is performed every time the web service operation to send a message is invoked. As we all know, the I/O files access is very expensive and a performance bottleneck, especially when it is incurred on every invocation of the web service ‘sendMessage’ [operation.
    Without radically re-writing the application, I am looking for a way to improve the performance of the web service and can only come up with the following 2 ways:
    1) Move the code out of the sendMessage operation: Here, the main question I have is 'to where should I move it to'? I have seen in the WebLogic Workshop documentation that WebLogic Server maintains only a single instance of a Java class that implements a Web Service operation, and each invoke of the Web Service uses this same instance. In that case, I should be able to put the code in the constructor so that the files is read only at the time the class is instantiated, but a constructor in the .jws file that contains the web service operations itself does not seem to be invoked by the container (I tried to put a breakpoint in the constructor, but it seems that the constructor code never gets called)
    2) Move the configuration variables into some type of standard configuration file of WebLogic, something like web.xml or wlw-config.xml or jws-config.properties files. But I found that these XML files have an associated schema to conform to and do not provide any custom elements or attributes that I could add for my application(is that true?). Also, if I can somehow put the configuration information into any of these standard files, how do I access it from within the application 'without' doing a file read from disk? Are these configuration file items available in memory for access and use by the web service and if they are, what API can I use to access and use them?
    Any and all ideas are welcome!
    Thanks!                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    I have been looking into a similar problem. Since web services are by design stateless, they aren't good for 'remembering' information between calls. Aside from a file read, the only other solution I have found is to use a database. You can make use of an entity bean or simply make some kind of JDBC call. I don't know if you need to stick with the config file, but if so maybe you could read the config data into a database once and then you might have faster access than reading from a file. I'm not sure about which would have better performace, but its all I have come up with so far. What parser are you using to read your XML file? Have you tried others to see if they have better performance?

  • Web services with Jdeveloper using weblogic as server

    Hi,
    I try to test creating PL/SQL web services by using a connection hosted by weblogic server instead of OC4J. The problem is what I try to publish a package of the database in the second stage when it asks for the connection to use, in the list I don't found the connection I create to weblogic . It presents as choice only connections used the server OC4J.
    I do not Know if it is possible to publish a package as web service by using weblogic server connection, and how to do it.
    can anyone help me please .
    Nawal

    Web services can only be published to BEA if you install Apache SOAP on BEA and use the Apache SOAP option of JDeveloper. The J2EE Web Services implementation framework is specific to Oracle9iAS.
    The PL/SQL Web Services server implementation is based on the J2EE Web Services option and as a result is not really portable to BEA.
    To publish a PL/SQL Web service on BEA with JDeveloper you would have to write the Java wrapper code to invoke the stored procedure using standard JDBC and then publish that Java class as a Web service using Apache SOAP. Then if you had Apache SOAP installed on BEA you would be set.
    Portability of Web services implementations is a big feature coming with JAX-RPC - currently what most vendors have is interoperability between implementations because of things like SOAPBuilders and WS-I. When JAX-RPC becomes part of J2EE 1.4 roughly in June and vendors start putting out implementations on it you should get closer to portability.
    In the meantime, the easiest way to get portability is to use the same SOAP server on both servers - Apache SOAP is a good example.
    Hope this helps.
    Mike

Maybe you are looking for

  • How to Populate Scrath Pad dynamically in IC web client..

    Hi all, i am struck in a requirement where i need to autopopulate error message in Scratch pad of IC when CSR accepts the call of Customer.The error message is generated when customer puts any wrong data in IVR.                                      i

  • Any Function in T-SQL thats similar to GREATEST() IN Orcl.

    Is there any Function in T-SQL thats similar to GREATEST() IN Orcl? Iam trying to find the greatest of two DATETIME datatype Fields in my 'select's. If there is no in built function, Whats the best approach?

  • How to call a private attribute from a funcion module?

    Guys, I am trying to call a private attribute but of course it does not recognize the attribute. I am not very familiar with ABAP Objects, so i need some help on this. What is the solution as i need to get values from the fields which are inside the

  • Extensions became weird after installing Toast 8 Titanium

    Okey, I use a lot of pixel fonts in Flash (pixel based fonts). I've been using some pixel fonts without problems since last year. In the Finder WIndow these fontsdidn't have any extension (like ttf) Flash recognized'em without problems... I installed

  • Video(s) on wb page show up as a blck rectangle

    Whenever (85% of the time) a video is supposed to show on the web page, all I get is a blank rectangle. I have to copy the URL and go to the IE browser where the video plays as intended.