all,
  I use BEA's Weblogic as my EJB server.I use the statefulSession
sample and it work well.But when I change the Client.class to a Applet,it
can't work.
  The applet's code is following(i don't modify it much,only change
main() to init()):

package examples.ejb.basic.statefulSession;

import javax.ejb.*;
import javax.naming.*;
import java.rmi.RemoteException;
import java.util.*;
import java.applet.*;

public class Client_A extends Applet {

  static String url       = "t3://localhost:7001";
  static String user      = null;
  static String password  = null;

  public void init(){
    System.out.println("\nBeginning statefulSession.Client...\n");
    String customerName = "Erin";
    try {
      Context ctx          = getInitialContext();
      examples.ejb.basic.statefulSession.TraderHome brokerage =
(examples.ejb.basic.statefulSession.TraderHome)
ctx.lookup("statefulSession.TraderHome");
      examples.ejb.basic.statefulSession.Trader trader =
brokerage.create("Terry");
      System.out.println("Creating trader " + trader.getTraderName() +
"\n");
      String stockName;
      int    numberOfShares;

      for (int i = 1 ; i <= 5; i++) {
        System.out.println("Start of Transaction " + i + " for " +
customerName);
        stockName      = "WEBL";
        numberOfShares = 100 * i;
        System.out.println("Buying " + numberOfShares + " of " + stockName);
        examples.ejb.basic.statefulSession.TradeResult tr =
trader.buy(customerName, stockName, numberOfShares);
        System.out.println("...Bought " + tr.numberTraded + " at $" +
                           tr.priceSoldAt);
        stockName      = "INTL";
        numberOfShares = 100 * (i+1);
        System.out.println("Selling " + numberOfShares + " of " +
stockName);
        tr = trader.sell(customerName, stockName, numberOfShares);
        System.out.println("...Sold " + tr.numberTraded + " at $" +
                           tr.priceSoldAt);
        System.out.println("Change in Cash Account: $" +
trader.getBalance());

        System.out.println("End of Transaction " + i + "\n");
      }
      System.out.println("Change in Cash Account: $" + trader.getBalance() +
"\n");
      System.out.println("Removing trader " + trader.getTraderName());
      trader.remove();
    }
    catch (examples.ejb.basic.statefulSession.ProcessingErrorException pe) {
      System.out.println("Processing Error: " + pe);
    }
    catch (Exception e) {
      System.out.println(":::::::::::::: Error :::::::::::::::::");
      e.printStackTrace();
    }
    System.out.println("\nEnd statefulSession.Client...\n");

  }

  static void parseArgs(String args[]) {
    if ((args == null) || (args.length == 0))
      return;
    for (int i = 0; i < args.length; i++) {
      if (args[i].equals("-url"))
        url = args[++i];
      else if (args[i].equals("-user"))
        user = args[++i];
      else if (args[i].equals("-password"))
        password = args[++i];
    }
  }
  static public Context getInitialContext() throws Exception {
    Hashtable h = new Hashtable();
    h.put(Context.INITIAL_CONTEXT_FACTORY,
        "weblogic.jndi.WLInitialContextFactory");
    h.put(Context.PROVIDER_URL, url);
    if (user != null) {
      System.out.println ("user: " + user);
      h.put(Context.SECURITY_PRINCIPAL, user);
      if (password == null)
      password = "";
      h.put(Context.SECURITY_CREDENTIALS, password);
    }
    return new InitialContext(h);
  }

}

The following is .html file :

<HTML>
<HEAD>
<TITLE>L</TITLE>
</HEAD>
<BODY>
<APPLET CODE="examples.ejb.basic.statefulSession.Client_A.class"
archive="/weblogic/classes/applets.jar,/weblogic/lib/weblogicaux.jar"
WIDTH=430 HEIGHT=270></APPLET>
</BODY>
</HTML>

when I run it ,from java console,I get the error:

Beginning statefulSession.Client...

com.ms.security.SecurityExceptionEx[weblogic/jndi/Environment.getProperty]:
Unable to access system property: weblogic.jndi.provider.rjvm
        at com/ms/security/permissions/PropertyPermission.check
(PropertyPermission.java)
        at com/ms/security/PolicyEngine.shallowCheck (PolicyEngine.java)
        at com/ms/security/PolicyEngine.checkCallersPermission (PolicyEngine.java)
        at com/ms/security/StandardSecurityManager.chk
(StandardSecurityManager.java)
        at com/ms/security/StandardSecurityManager.checkPropertyAccess
(StandardSecurityManager.java)
        at java/lang/System.getProperty (System.java)
        at weblogic/jndi/Environment.getProperty (Environment.java:756)
        at weblogic/jndi/Environment.getProviderRJVM (Environment.java:849)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:199)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:180)
        at javax/naming/spi/NamingManager.getInitialContext
(NamingManager.java:771)
        at javax/naming/InitialContext.getDefaultInitCtx (InitialContext.java:169)
        at javax/naming/InitialContext.<init> (InitialContext.java:129)
        at examples/ejb/basic/statefulSession/Client_A.getInitialContext
(Client_A.java:133)
        at examples/ejb/basic/statefulSession/Client_A.init (Client_A.java:48)
        at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
        at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.run (AppletPanel.java)
        at java/lang/Thread.run (Thread.java)
com.ms.security.SecurityExceptionEx[weblogic/utils/Debug.<clinit>]: Unable
to access system property: debug.methodNames
        at com/ms/security/permissions/PropertyPermission.check
(PropertyPermission.java)
        at com/ms/security/PolicyEngine.shallowCheck (PolicyEngine.java)
        at com/ms/security/PolicyEngine.checkCallersPermission (PolicyEngine.java)
        at com/ms/security/StandardSecurityManager.chk
(StandardSecurityManager.java)
        at com/ms/security/StandardSecurityManager.checkPropertyAccess
(StandardSecurityManager.java)
        at java/lang/System.getProperty (System.java)
        at java/lang/Boolean.getBoolean (Boolean.java)
        at weblogic/utils/Debug.<clinit> (Debug.java:32)
        at weblogic/utils/Debug.assert (Debug.java)
        at weblogic/common/internal/ThreadStorage.current (ThreadStorage.java:35)
        at weblogic/common/internal/DNSBasedRJVMFinder.findOrCreate
(DNSBasedRJVMFinder.java:175)
        at weblogic/common/internal/ServerURL.findOrCreateRJVM (ServerURL.java:156)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:265)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:180)
        at javax/naming/spi/NamingManager.getInitialContext
(NamingManager.java:771)
        at javax/naming/InitialContext.getDefaultInitCtx (InitialContext.java:169)
        at javax/naming/InitialContext.<init> (InitialContext.java:129)
        at examples/ejb/basic/statefulSession/Client_A.getInitialContext
(Client_A.java:133)
        at examples/ejb/basic/statefulSession/Client_A.init (Client_A.java:48)
        at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
        at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.run (AppletPanel.java)
        at java/lang/Thread.run (Thread.java)
com.ms.security.SecurityExceptionEx[weblogic/t3/services/ConfigClient.configure]:
Unable to access system properties.
        at com/ms/security/permissions/PropertyPermission.check
(PropertyPermission.java)
        at com/ms/security/PolicyEngine.shallowCheck (PolicyEngine.java)
        at com/ms/security/PolicyEngine.checkCallersPermission (PolicyEngine.java)
        at com/ms/security/StandardSecurityManager.chk
(StandardSecurityManager.java)
        at com/ms/security/StandardSecurityManager.checkPropertiesAccess
(StandardSecurityManager.java)
        at java/lang/System.getProperties (System.java)
        at weblogic/t3/services/ConfigClient.configure (ConfigClient.java:54)
        at weblogic/rjvm/Kernel.ensureInitialized (Kernel.java:110)
        at weblogic/common/internal/DNSBasedRJVMFinder.findOrCreate
(DNSBasedRJVMFinder.java:203)
        at weblogic/common/internal/ServerURL.findOrCreateRJVM (ServerURL.java:156)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:265)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:180)
        at javax/naming/spi/NamingManager.getInitialContext
(NamingManager.java:771)
        at javax/naming/InitialContext.getDefaultInitCtx (InitialContext.java:169)
        at javax/naming/InitialContext.<init> (InitialContext.java:129)
        at examples/ejb/basic/statefulSession/Client_A.getInitialContext
(Client_A.java:133)
        at examples/ejb/basic/statefulSession/Client_A.init (Client_A.java:48)
        at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
        at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.run (AppletPanel.java)
        at java/lang/Thread.run (Thread.java)
EnableReplaceObject failed.
RMI implementations hosted by this VM should not be buried in
java.io.Serializable data.
:::::::::::::: Error :::::::::::::::::
[Root exception is weblogic.rmi.UnmarshalException: Unmarshalling return
- with nested exception:
[java.lang.ClassNotFoundException:
weblogic.Server]]javax.naming.CommunicationException
        at weblogic/jndi/toolkit/ExceptionTranslator.toNamingException
(ExceptionTranslator.java:65)
        at weblogic/jndi/toolkit/ExceptionTranslator.toNamingException
(ExceptionTranslator.java:26)
        at weblogic/jndi/WLInitialContextFactory.toNamingException
(WLInitialContextFactory.java:513)
        at weblogic/jndi/WLInitialContextFactory.newContext
(WLInitialContextFactory.java:356)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:275)
        at weblogic/jndi/WLInitialContextFactory.getInitialContext
(WLInitialContextFactory.java:180)
        at javax/naming/spi/NamingManager.getInitialContext
(NamingManager.java:771)
        at javax/naming/InitialContext.getDefaultInitCtx (InitialContext.java:169)
        at javax/naming/InitialContext.<init> (InitialContext.java:129)
        at examples/ejb/basic/statefulSession/Client_A.getInitialContext
(Client_A.java:133)
        at examples/ejb/basic/statefulSession/Client_A.init (Client_A.java:48)
        at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
        at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
        at com/ms/applet/AppletPanel.run (AppletPanel.java)
        at java/lang/Thread.run (Thread.java)

End statefulSession.Client...

I don't know how to result this problem.
Need I add other .jar to archive tag in .html?

Thanks in advance.
Huyong




______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to