|
| Hvordsan kan jeg kore RMI i UNIX Fra : Robert |
Dato : 28-05-02 12:53 |
|
Hej alle
Jeg har nogle exapmpler af RMI der kan kompilers og køres uden problemer i
windows. Jeg kan kompeler det same program i UNIX (Sun Solaris 8 ), men jeg
få fejl når jeg køre den i UNIX.
Jeg gøre følgende:
1- Kompeler min Java files. ( den kompeleres uden problem )
2- Laver Stub og Skeleton via rmic (uden nogle problem )
3- Starte rmiregistry (via rmiregistry &, uden problem )
4- Jeg få FEJL når jeg køre min RMI server ( Fejlen siger at den kan
ikke finde
stub filen, selvom jeg classpath peger på de directory som inholder stub
classer. )
Her er den fejl jeg får:
******
$ java CalculatorServer
trouble: java.rmi.ServerException: RemoteException occurred in server
thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested
exception is:
java.lang.ClassNotFoundException: CalculatorImpl_Stub
******
Jeg har også provet med følgende komandoer, men få det same fejl igain.
$ java -classpath . CalculatorServer
og $ java -Djava.rmi.server.codebase=file:/mypath CalculatorServer
Er der nogle der kan hjælpe,
Tak på forhånd Robert
| |
Casper Madsen (28-05-2002)
| Kommentar Fra : Casper Madsen |
Dato : 28-05-02 21:17 |
|
Hmm... jeg ved ikke om dette hjælper dig, men det er hvad en hurtig søgning
på google siger:
public class UnmarshalException
extends RemoteException
An UnmarshalException can be thrown while unmarshalling the parameters or
results of a remote method call if any of the following conditions occur:
a.. if an exception occurs while unmarshalling the call header
b.. if the protocol for the return value is invalid
c.. if a java.io.IOException occurs unmarshalling parameters (on the
server side) or the return value (on the client side).
d.. if a java.lang.ClassNotFoundException occurs during unmarshalling
parameters or return values
e.. if no skeleton can be loaded on the server-side; note that skeletons
are required in the 1.1 stub protocol, but not in the 1.2 stub protocol.
f.. if the method hash is invalid (i.e., missing method).
g.. if there is a failure to create a remote reference object for a remote
object's stub when it is unmarshalled.
Håber det hjælper, men generelt skal du huske at katalog karakteren i Unix
ser anderledes ud: / istedet for \ i windows, desuden ser skilletegnet i
classpathen også anderledes ud... Mener det er et , (komma) i windows og et
; (semmikolon) i Unix, eller sådan noget lignende...
MVH Casper
"Robert" <robert_loui@yahoo.com> wrote in message
news:acvqu7$56o$1@newstoo.ericsson.se...
> Hej alle
>
> Jeg har nogle exapmpler af RMI der kan kompilers og køres uden problemer i
> windows. Jeg kan kompeler det same program i UNIX (Sun Solaris 8 ), men
jeg
> få fejl når jeg køre den i UNIX.
>
> Jeg gøre følgende:
>
> 1- Kompeler min Java files. ( den kompeleres uden problem )
>
> 2- Laver Stub og Skeleton via rmic (uden nogle problem )
>
> 3- Starte rmiregistry (via rmiregistry &, uden problem )
>
> 4- Jeg få FEJL når jeg køre min RMI server ( Fejlen siger at den kan
> ikke finde
> stub filen, selvom jeg classpath peger på de directory som inholder stub
> classer. )
>
> Her er den fejl jeg får:
>
> ******
> $ java CalculatorServer
> trouble: java.rmi.ServerException: RemoteException occurred in server
> thread; nested exception is:
> java.rmi.UnmarshalException: error unmarshalling arguments; nested
> exception is:
> java.lang.ClassNotFoundException: CalculatorImpl_Stub
>
> ******
>
>
> Jeg har også provet med følgende komandoer, men få det same fejl igain.
> $ java -classpath . CalculatorServer
> og $ java -Djava.rmi.server.codebase=file:/mypath CalculatorServer
>
> Er der nogle der kan hjælpe,
>
>
> Tak på forhånd Robert
>
>
>
>
>
>
>
>
| |
|
|