Java -Djava.rmi.server.codebase=file:///.....

Cross posted in the hope that someone using it knows how....
I am using the following command:
java -Djava.rmi.server.codebase=file:///home/ben/fyp/build/ -Djava.security.policy=security.policy -cp ./lib/bcprov-jdk15-130.jar:./props:./build com.bensmyth.fyp.example.IssuerServer
Can I specify -Djava.rmi.server.codebase=file:///home/ben/fyp/build/ without giving the whole path? Can I say ./build?

I've come back to this issue again (since I am moving code around to different systems again). Using linux I can use -Djava.rmi.server.codebase=file://$PWD/build/
Presumably there is a similar command in WIndows.

Similar Messages

  • Java.rmi.server.codebase=file:(?????); at client side: classnotfounexceptio

    I'm trying to run an RMI application (under Windows XP, one machine for client and server) like this:
    at server side:
    java -Djava.rmi.server.codebase=file://\..\..\..\j\ -Djava.security.policy=file:.\polityka.txt sss
    - and it works fine, but at client side:
    java -Djava.security.policy=file:.\polityka.txt -Djava.rmi.server.codebase=file://\..\..\..\j\ kkk
    results in:
    Exception in thread "main" java.lang.NoClassDefFoundError: PrzykladowaKlasa
    at kkk.main(kkk.java:31)
    when I'm listing directory (at client side) got with System.getProperty("java.rmi.server.codebase") i get this
    file://\..\..\..\j\
    OdleglaKlasa_Stub.class
    PrzykladowaKlasa.class
    Folder Structure is:
    |------j\
    | |------(*_Stub.class, and ClassNeededByClient.class)
    |------2\
    | |------Server\
    | | |------(serwer files)
    | |------Klient\
    | | |------(klient files)
    I'm fresh in RMI and Codebase poperty, but with some exp with Java...
    (policy files are allright - grant {permission java.security.AllPermission;};)
    Any help will be appreciated.

    I've come back to this issue again (since I am moving code around to different systems again). Using linux I can use -Djava.rmi.server.codebase=file://$PWD/build/
    Presumably there is a similar command in WIndows.

  • Spaces in -Djava.rmi.server.codebase path

    hello,
    how must i format the string containing the codebase for a rmi server if the path to the codebase contains spaces?
    -Djava.rmi.server.codebase=file:c:/path/ and -Djava.rmi.server.codebase=file:/path/ works, but
    -Djava.rmi.server.codebase=file:c:/path with spaces/ doesnt work
    i have tried to put the string in quotes and to replace the spaces with %20 (url encoded)
    but nothing does work.
    how must i format the string?
    cu,
    elmar

    I guess you are using a batch file to start your RMI application.
    Spaces in URLs must be encoded with %20, that is correct.
    The problem is: the command line interpreter on Windows interprets % as a special character and will replace it.
    What worked for me (Windows Vista):
    java -Djava.rmi.server.codebase="file:/C:/Users/FirstName%%20LastName/RMI/" App
    So encode each white space with %%20.
    You can very easily check by inserting the following code at the start of your RMI application. These lets you see how the codebase is set.
    System.out.println(" Codebase: " + System.getProperty("java.rmi.server.codebase"));

  • Rmiregistry �J-Djava.rmi.server.codebase=URL

    Hi all,
    When starting the rmiregistry, I do the following:
    rmiregistry �J-Djava.rmi.server.codebase=URL
    Eager to understand what is going on, I read that this means the following:
    RMIClassLoader:
    For stubs and skeletons of remote objects created in the local virtual machine, the URL specified by the local java.rmi.server.codebase property is used.
    I thought "hey why not do the same for the server" and tried:
    java -Djava.rmi.server.codebase=URL Server
    getting me a StubNotFoundException. Can anybody tell me what I am doing wrong? The Server works when the Stub is in the local classpath but refuses to load it via the http Server. Am I at least theoretically right or is there a fundamental misconception in what I am trying?
    Thanks,
    Ralf

    RMI uses annotations to record codebase information. In addition to recording the class despriptions also records info about the location from which it loaded the classes bytecode. If you are trying to specify the codebase on the server and removing the stubs from the servers classpath the bytecode will never actually get loaded.

  • -Djava.rmi.server.codebase Question.

    When I study the meaning of codebase in
    http://java.sun.com/j2se/1.3/docs/guide/rmi/codebase.html
    , I am still confuse what is different between codebase
    settings in Remote Object side and RMI Client side.
    The command options -Djava.rmi.server.codebase=
    http://myHost/myDir and -Djava.rmi.server.codebase=
    http://wwwserver/mydirectory ( in Figure3 and Figure4 of
    http://java.sun.com/j2se/1.3/docs/guide/rmi/codebase.html
    ) are set in which side ??
    The option in Remote Object side seems no any work.
    Who can explain its meaning ??
    Thank you in advance... Alan.

    Hi,
    For the dynamic class loading to work, you should give
    -Djava.rmi.server.codebase=http://some-server/
    you can see that it supports http protocol.. So there should be one web server running on the server side so that client can call it by name or by IP address.. Then try running the program again. now it will work..
    actually you should give this option on client side as it is the client who needs this property.. so in order to download classes the server machine should be addresable to the client in any method. if it is a LAN, try giving '\\computer-name' in the value of the property.. I haven't tried this, but I think you dont need a http server this time.. I am not sure abt this,,. check it out..
    - Bibin.

  • Option '-Djava.rmi.server.hostname' unnecessary?

    In this tutorial:
    http://java.sun.com/docs/books/tutorial/rmi/running.html
    you start the rmi server with:
    java -Djava.rmi.server.codebase=file:/c:\home\ann\public_html\classes/
    -Djava.rmi.server.hostname=zaphod.east.sun.com
    -Djava.security.policy=java.policy
    engine.ComputeEngine
    but in this tutorial:
    http://java.sun.com/j2se/1.4.2/docs/guide/rmi/getstart.doc.html#5321
    you start it without the Djava.rmi.server.hostname option:
    java -Djava.rmi.server.codebase=http://myhost/~myusrname/myclasses/ -Djava.security.policy=$HOME/mysrc/policy examples.hello.HelloImpl
    I have also tried to omit the hostname option from the first tutorial and it works fine..
    Why is it not necessary to specify the Djava.rmi.server.hostname option to make the examples work?
    What is the function of this option?

    It's only necessary if you have a fouled-up DNS which doesn't give the right hostname by default.
    And if Sun had understood the TCP weak-end model better than they did in 1996 it wouldn't be necessary at all.

  • RMI Server Codebase Permission Denied

    I'm having a problem trying to get my application running in a test environment. I currently have this same application up and running in an almost identical location without any issues, and I'm at a loss to understand what the problem is.
    My application is an RMI server-client setup. At the moment, I'm having trouble with solely the server portion, as I'm unable to get it to access the codebase. I start the application with the following runServer.sh file (located in /usr/local/app/app, so the $ROOT_DIR=pwd is correct):
    Line: -----
    #!/bin/bash
    ROOT_DIR=`pwd`
    JAVA_HOME=/usr/java/latest
    CLASSPATH=''
    #:: Please edit the environmental variables below so that it refers
    #:: to the location where you have distribution URL.
    DISTRIBUTION_URL=file://$ROOT_DIR
    find /usr/local/app/app/server -name '*.jar' -type f -print | while read FILE
    do
    if [ $CLASSPATH ]
    then
         CLASSPATH=$CLASSPATH:$FILE
    else
         CLASSPATH=$FILE
    fi
    echo $CLASSPATH > classpath.env
    done
    read CLASSPATH < classpath.env
    find /usr/local/app/app/import -name '*.jar' -type f -print | while read FILE
    do
    if [ $CLASSPATH ]
    then
         CLASSPATH=$CLASSPATH:$FILE
    else
         CLASSPATH=$FILE
    fi
    echo $CLASSPATH > classpath.env
    done
    read CLASSPATH < classpath.env
    find /usr/local/app/app/common -name '*.jar' -type f -print | while read FILE
    do
    if [ $CLASSPATH ]
    then
         CLASSPATH=$CLASSPATH:$FILE
    else
         CLASSPATH=$FILE
    fi
    echo $CLASSPATH > classpath.env
    done
    read CLASSPATH < classpath.env
    echo ${CLASSPATH}
    cd server
    # start /min "RMI Registry"
    $JAVA_HOME/bin/rmiregistry &
    JAVA_SECURITY="-Djava.security.policy==config/admin.policy -Djava.security.auth.login.config==config/app_jaas.config"
    IMPORT_PROPERTIES="-Dapp.import.properties=file://$ROOT_DIR/import/config/import.properties -Dapp.import.logging.properties=file://$ROOT_DIR/import/config/importlog.properties -Dapp.client.properties=file://$ROOT_DIR/client/config/client.properties"
    app_PROPERTIES="-Dapp.root=$ROOT_DIR -Dconnection.pool.properties=file://$ROOT_DIR/server/config/database.properties -Dapp.common.properties=$DISTRIBUTION_URL/common/config/common.properties -Dapp.server.properties=file://$ROOT_DIR/server/config/server.properties -Dapp.server.logging.properties=file://$ROOT_DIR/server/config/log.properties"
    echo
    echo "-------------- app Server -------------------"
    echo
    $JAVA_HOME/bin/java -ms96m -mx256m -classpath $CLASSPATH -Djava.rmi.server.codebase=file:///usr/local/app/app/common/lib/common.jar $IMPORT_PROPERTIES $JAVA_SECURITY $app_PROPERTIES -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n app.serverimpl.ServerStarter
    cd $ROOT_DIR
    Line: -----
    After running this, it fails at that last line, $JAVA_HOME/bin/java etc. Near as I can see from the error is that it cannot access the -Djava.rmi.server.codebase.
    Line: -----
    app.serverimpl.service.ServiceException:java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
    java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.lang.ClassNotFoundException: access to class loader denied
    at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:419)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:267)
    at sun.rmi.transport.Transport$1.run(Transport.java:177)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:636)
    at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:273)
    at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:251)
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:377)
    at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source)
    at app.serverimpl.service.LoginManagerServiceImpl.start(LoginManagerServiceImpl.java:52)
    at app.serverimpl.service.ServiceAdapter.start(ServiceAdapter.java:96)
    at app.serverimpl.service.ServiceManager.startup(ServiceManager.java:78)
    at app.serverimpl.ServerStarter.main(ServerStarter.java:62)
    Caused by: java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.lang.ClassNotFoundException: access to class loader denied
    at sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source)
    at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:409)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:267)
    at sun.rmi.transport.Transport$1.run(Transport.java:177)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:173)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:553)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:636)
    Caused by: java.lang.ClassNotFoundException: access to class loader denied
    at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:445)
    at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:182)
    at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:637)
    at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:264)
    at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:214)
    at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1592)
    at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1513)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1749)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:368)
    ... 12 more
    Caused by: java.security.AccessControlException: access denied (java.io.FilePermission /usr/local/app/app/common/lib/- read)
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:393)
    at java.security.AccessController.checkPermission(AccessController.java:553)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
    at sun.rmi.server.LoaderHandler$Loader.checkPermissions(LoaderHandler.java:1173)
    at sun.rmi.server.LoaderHandler$Loader.access$000(LoaderHandler.java:1127)
    at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:409)
    ... 21 more
    Line: -----
    Out of growing desperation (and since it's a test VM in virtual box so I'm not really protecting anything) I've already granted full permissions to everyone for these these files in the filesystem itself - chmod -R 775 - and I've made sure that common.jar is accessible. I also double-checked the Security Policy, Djava.security.policy, and that's just a straight all permission to everything (again, I'm not protecting anything on this test).
    Line: -----
    grant {
    permission java.security.AllPermission;
    Line: -----
    What's really driving me nuts is that this exact same code is already running and working on another machine. There are no environment variables that I'm missing, and I don't see how those would relate to this problem even if I did. The directories are identical, and I've verified the location that's listed as the cause (/usr/local/app/app/common/lib/) exists and is accessible. I keep coming back to the file permissions and the security policy and I'm sure I could be missing something obvious, but I am not seeing it at all. Can anyone give me some advice on this?
    I'm running a VM in VirtualBox 4.1.4, running CentOS 5.7 32-bit. Java is JDK 1.6.0, just the basic yum install package.

    This is a .policy file problem, not a filesystem permissions problem. Run it with -Djava.security.debug=access,failure to see exactly what is going on. Basically your .policy file either doesn't grant the required FilePermission or isn't being loaded.
    NB a codebase of a local JAR file isn't going to work unless all the clients are in the same host.

  • Java.rmi.server.codebase in JSP

    Hi,
    i have a system made from an RMI client and an RMI server. The users access the system through a JSP page, which creates an instance of the RMI client. In order for the system to work, i need to specify the java.rmi.server.codebase property.
    For testing purposes the client has a main(..) method. If i run just the client the server and specify java.rmi.server.codebase, everything works.
    If i don't specify it i get a java.rmi.UnmarshalException, with the nested exception of ClassNotFound. The same exception i get trying to access the jsp page. So, i guess, it's due to the lack of the property.
    I tried setting the property in the jsp page, but it doesn't work.
    Thank you.
    P.S. : maybe this is relevant: my jsp server is tomcat 6.0.

    it refers to where are your stubs and skeletons
    you can set it to point to the jar files or to the directory that contains them
    hope htis helps
    regards
    marco

  • How to interpret rmi log msgs when setting -Djava.rmi.server.logCalls=true

    i have set this property: -Djava.rmi.server.logCalls=true
    now i am getting the following rmi log msgs on the console:
    Tue Nov 12 15:38:08 PST 2002:RMI:RMI TCP Connection(4851)-172.16.103.94:[172.16.103.94: sun.rmi.transport.DGCImpl[0:0:0, 2]: java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[], long, java.rmi.dgc.Lease)]
    Tue Nov 12 15:38:13 PST 2002:RMI:RMI TCP Connection(4852)-127.0.0.1:[127.0.0.1: sun.rmi.registry.RegistryImpl[0:0:0, 0]: java.rmi.Remote lookup(java.lang.String)]
    Tue Nov 12 15:38:20 PST 2002:RMI:RMI TCP Connection(4853)-172.16.103.94:[172.16.103.94: sun.rmi.transport.DGCImpl[0:0:0, 2]: void clean(java.rmi.server.ObjID[], long,java.rmi.dgc.VMID, boolean)]
    can some one pls tell me know to interpret the messages, what does the number 4853 in TCP Connection(4853) mean ? thanks a lot

    Basically it is:
    date:subsystem:threadid:[remote object[object-id]:method]The 4853 is part of the thread-id and it is something like an instance number of the thread class.
    EJP

  • Java Exceptions in Server Trace file

    Is it possible to tell the Server (817)
    not to write the Java exceptions into the trace file ?
    thx in advance
    null

    Ludovik Segaert wrote:
    I have a java server that also acts as a client to another java server. When this second server throws an exception, it never reaches the first server acting as a client.Any ideas?What version of WLE ? Does the server acting as a client execute normally
    or does it get a different exception?
    Peter

  • Is it a must to set java.rmi.server.codebase property?

    As to my understanding, only when JVM cannot find the necessary class from the local CLASSPATH will it tries to download the classes from the codebase right? so if the class exists in the local machine, actually it is unnecessary to set this property? Urgent, help!!!!!

    Correct.

  • Rmi.server.codebase property

    Hi i am new ,
    I've writting a small RMI-application using Apache webserver lo load classes,that will be needed by client.
    the question:I will instead of webserver(http or ftp) a file protocol and as codebase a networkdrive,that be of course from client accessible
    what muss exactly written in the property?
    thanks!

    file://myserver/mydirectory/myjarfile.jar. If there are any spaces they must be URL-encoded as %20. See java.net.URLEncoder.

  • Problem in starting RMI server, please help!

    Hi , all:
    I am learning RMI from SUN's tutorial. I set all of program packages as same as the tutorial, compiled all of programs . and built all of the jar files, the server classes and the client classes.When I run the server, ComputeEngine, it did not work ,and the following messages were showed at command lines:
    C:\RMI\doc>java -Djava.rmi.server.codebase=file:/c:\rmi\ann\public_html\classes/
    -Djava.rmi.server.hostname=localhost -Djava.security.policy=java.policy eng
    ine.ComputeEngine
    ComputeEngine exception: access denied (java.net.SocketPermission 127.0.0.1:1099
    connect,resolve)
    java.security.AccessControlException: access denied (java.net.SocketPermission 1
    27.0.0.1:1099 connect,resolve)
    at java.security.AccessControlContext.checkPermission(AccessControlConte
    xt.java:272)
    at java.security.AccessController.checkPermission(AccessController.java:
    399)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:545)
    at java.lang.SecurityManager.checkConnect(SecurityManager.java:1044)
    at java.net.Socket.<init>(Socket.java:262)
    at java.net.Socket.<init>(Socket.java:100)
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirect
    SocketFactory.java:25)
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMaster
    SocketFactory.java:120)
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:499)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:190
    at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:174)
    at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:318)
    at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
    at java.rmi.Naming.rebind(Naming.java:160)
    at engine.ComputeEngine.main(ComputeEngine.java:25)
    Please give helps .
    Thanks!

    Thank.
    Thank.
    I have put them at the same directory, but is deos not work.
    Something I am not sure.
    On the SUN's tutorial , the follows is given:
    Win32:
    java -Djava.rmi.server.codebase=file:/c:\home\ann\public_html\classes/
    -Djava.rmi.server.hostname=zaphod.east.sun.com
    -Djava.security.policy=java.policy
    engine.ComputeEngine
    I changed hostname = localhost
    I also changed the code of the server class given by tutorial :
    String name = "//host/Compute" ;
    to:
    String name = "//localhost/Compute";
    Should I make such changes?
    Here is the server class given by the tutorial:
    package engine;
    import java.rmi.*;
    import java.rmi.server.*;
    import compute.*;
    public class ComputeEngine extends UnicastRemoteObject
    implements Compute
    public ComputeEngine() throws RemoteException {
    super();
    public Object executeTask(Task t) {
    return t.execute();
    public static void main(String[] args) {
    if (System.getSecurityManager() == null) {
    System.setSecurityManager(new RMISecurityManager());
    String name = "//host/Compute";
    try {
    Compute engine = new ComputeEngine();
    Naming.rebind(name, engine);
    System.out.println("ComputeEngine bound");
    } catch (Exception e) {
    System.err.println("ComputeEngine exception: " +
    e.getMessage());
    e.printStackTrace();

  • Problem in starting RMI server, help please

    Hi , all:
    I am learning RMI from SUN's tutorial. I set all of program packages as same as the tutorial, compiled all of programs . and built all of the jar files, the server classes and the client classes.When I run the server, ComputeEngine, it did not work ,and the following messages are showed at command lines:
    C:\RMI\doc>java -Djava.rmi.server.codebase=file:/c:\rmi\ann\public_html\classes/
    -Djava.rmi.server.hostname=localhost -Djava.security.policy=java.policy eng
    ine.ComputeEngine
    ComputeEngine exception: access denied (java.net.SocketPermission 127.0.0.1:1099
    connect,resolve)
    java.security.AccessControlException: access denied (java.net.SocketPermission 1
    27.0.0.1:1099 connect,resolve)
    at java.security.AccessControlContext.checkPermission(AccessControlConte
    xt.java:272)
    at java.security.AccessController.checkPermission(AccessController.java:
    399)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:545)
    at java.lang.SecurityManager.checkConnect(SecurityManager.java:1044)
    at java.net.Socket.<init>(Socket.java:262)
    at java.net.Socket.<init>(Socket.java:100)
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirect
    SocketFactory.java:25)
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMaster
    SocketFactory.java:120)
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:499)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:190
    at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:174)
    at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:318)
    at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
    at java.rmi.Naming.rebind(Naming.java:160)
    at engine.ComputeEngine.main(ComputeEngine.java:25)
    Please give helps .
    Thanks!

    You are setting the security policy to the file named
    java.policy, make sure that it is in the same
    directory where you are invoking the java compiler.Thank.
    I have put them at the same directory, but is deos not work.
    Something I am not sure.
    On the SUN's tutorial , the follows is given:
    Win32:
    java -Djava.rmi.server.codebase=file:/c:\home\ann\public_html\classes/
    -Djava.rmi.server.hostname=zaphod.east.sun.com
    -Djava.security.policy=java.policy
    engine.ComputeEngine
    I changed hostname = localhost
    I also changed the code of the server class given by tutorial :
    String name = "//host/Compute" ;
    to:
    String name = "//localhost/Compute";
    Should I make such changes?
    Here is the server class given by the tutorial:
    package engine;
    import java.rmi.*;
    import java.rmi.server.*;
    import compute.*;
    public class ComputeEngine extends UnicastRemoteObject
    implements Compute
    public ComputeEngine() throws RemoteException {
    super();
    public Object executeTask(Task t) {
    return t.execute();
    public static void main(String[] args) {
    if (System.getSecurityManager() == null) {
    System.setSecurityManager(new RMISecurityManager());
    String name = "//host/Compute";
    try {
    Compute engine = new ComputeEngine();
    Naming.rebind(name, engine);
    System.out.println("ComputeEngine bound");
    } catch (Exception e) {
    System.err.println("ComputeEngine exception: " +
                   e.getMessage());
    e.printStackTrace();

  • RMI Server

    Alright guys I am trying to get a Simple RMI example running. I can run the registtry from the command prompt but cannot get the server started.
    My command to run the server and the error are as follows
    C:\Documents and Settings\John\jbproject\simple-rmi\classes>java -Djava.rmi.server.codebase=file:c:\Documents and Settings\John\jbproject\simple-rmi\classes\ -D
    java.security.policy=file:c:\Documents and Settings\John\jbproject\simple-rmi\Si
    mpleRMI.policy simple-rmi.SimpleRMIServer
    Exception in thread "main" java.lang.NoClassDefFoundError
    Any ideas, I am going crazy I have cjecked the paths individually using another command prompt and it is fine. Advice???

    Please check that your program can find all necessary classes. It looks like your application is missing some classes. Check the "visibility" of your classes, their names etc. (public MyClass ..)
    As the error says no class found... if you are using "package"-keyword please check that you are importing right classes from packages.(import packagename.YourClass...)

Maybe you are looking for

  • How do I install leopard on an external drive

    I have been unable to install snow leopard on my external drive, when I put the install disc in the drive on the iMAC, it shows up on the desktop, but i cannot get it to install on the external drive, the iMAC has Lion installed.

  • Error in  Securities DBT  update types

    Hi experts We are using securities module (Transaction manager) to manage our stock (equity) transactions. We have defined the update types for (DBT_E001 and DBT_B001) as not relevant to posting as i do not want to post the gain / loss on sale of sec

  • How do I remove an app from my iTunes library?

    I've unchecked the box in the App list of my iPhone but I want to delete it completely so I don't get any more upgrade notices. How can I trash it on both my iphone and itunes?

  • Cannot start after change sata mode

    Hi I have a probook 4510s i try to install win Xp instead of opensuse. Before  installing  XP, i change a SATA mode from AHCI to IDE. XP was installed ok but when i try to switch back from IDE to AHCI, my laptoop freeze and got black screen. Now when

  • Fcp8 sync wih audio sequencer

    Does Final Cut Pro 8 send sync data (smpte or MIDI Time Code) in order for it to be synched with an audio sequencer (like Logic, Nuendo or PT). It could be internal sync (through an IAC Driver bus) or externally through MIDI Time Code (for instance),