JDK6 And ClassNotFound Exception during RMI server start

Hello,
I have been write a simple Hello World RMI, but I'm unable to start the server always get this exeception:
Server exception: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
     java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
     java.lang.ClassNotFoundException: rmi.Hello
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
     java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
     java.lang.ClassNotFoundException: rmi.Hello
     at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:396)
     at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:250)
     at sun.rmi.transport.Transport$1.run(Transport.java:159)
     at java.security.AccessController.doPrivileged(Native Method)
     at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
     at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
     at java.lang.Thread.run(Thread.java:619)
     at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
     at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
     at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
     at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source)
     at rmi.HelloMain.main(HelloMain.java:21)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
     at java.lang.reflect.Method.invoke(Method.java:597)
     at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)The sources are these:
package rmi;
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface Hello extends Remote {
    public void sayHello() throws RemoteException;
package rmi;
import java.rmi.RemoteException;
public class HelloServer implements Hello{
    public HelloServer() {
        super();
    public void sayHello() throws RemoteException {
        System.out.println("Ciau!");
package rmi;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import java.rmi.server.UnicastRemoteObject;
public class HelloMain {
    public static void main(String[] args) {
     try {
         Hello obj = new HelloServer();
         Hello stub = (Hello) UnicastRemoteObject.exportObject(obj, 0);
        // Bind the remote object's stub in the registry
        Registry registry = LocateRegistry.getRegistry();
        registry.bind("Hello", stub);
        System.err.println("Server ready");
    } catch (Exception e) {
        System.err.println("Server exception: " + e.toString());
        e.printStackTrace();
}May be I'm wrong with start command, but I tried differents syntax without result.
Can you help me?
Thanks to all.
PS:Sorry for my spaghetti-english :D

I had similar issue and i got rid of it by doing the following:
i. Start rmiregistry from the server code (so that the JVM remains the same) like this
// Server.java
Process pro = Runtime.getRuntime().exec("rmiregistry 1099 &");
// ... ii. Use java.rmi.server.codebase property while starting the server
D:\rmiEx\bin>java -Djava.rmi.server.codebase=file:/D:\rmiEx\bin example.hello.Server

Similar Messages

  • Raising new Exception within RMI server

    hi all,
    i implemented an RMI server which, in one of his method, throws my custom exception.
    Since my RMI server is loading classes dynamically, i grabbed all those exceptions that comes when a class cannot be loaded in an MyClassNotLoadedException
    in my code i write the following lined
    try {
    MyClass example = (MyClass)class.forName("MyClass").newInstance();
    } catch(Exception e) {
    throws new MyClassNotLoadedException(e);
    when i am running my test client, i always got the following exception:
    java.rmi.activation.ActivateFailedException: failed to activate object; nested e
    xception is:
    java.rmi.activation.ActivationException: group creation failed after 2 t
    ries; nested exception is:
    java.rmi.UnmarshalException: Error unmarshaling return; nested exception
    is:
    java.lang.ClassNotFoundException: com.nokia.jiacc.IACClassNotLoadedExcep
    tion
    java.rmi.activation.ActivationException: group creation failed after 2 tries; ne
    sted exception is:
    java.rmi.UnmarshalException: Error unmarshaling return; nested exception
    is:
    java.lang.ClassNotFoundException: com.nokia.jiacc.IACClassNotLoadedExcep
    tion
    java.rmi.UnmarshalException: Error unmarshaling return; nested exception is:
    java.lang.ClassNotFoundException: com.nokia.jiacc.IACClassNotLoadedExcep
    tion
    java.lang.ClassNotFoundException: com.nokia.jiacc.IACClassNotLoadedException
    at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Stream
    RemoteCall.java:245)
    at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:
    220)
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:122)
    at sun.rmi.server.Activation$ActivatorImpl_Stub.activate(Unknown Source)
    at java.rmi.activation.ActivationID.activate(ActivationID.java:89)
    at sun.rmi.server.ActivatableRef.activate(ActivatableRef.java:250)
    at sun.rmi.server.ActivatableRef.invoke(ActivatableRef.java:110)
    at com.nokia.jiacc.IACCPlugInImpl_Stub.callMeRemotely(Unknown Source)
    at com.nokia.jiacc.examples.Client.main(Client.java:52)
    If instead, in the catch statement i don't raise any exception, everything works fine.
    can anyone help me?? is it so that every exception that i raise in my RMI server must
    extends RemoteException??
    hope that someone can help me
    thanx in advance and regards
    marco

    Don't need to extends RemoteException. But have you defined your
    Exception that is implements Serializable?
    public class YourException extends Exception
                                 implements Serializable
    {...}Regards,
    Geri

  • Which processes are happened during App server starting?

    Hi..
    I think that the S1AS 7.0 starts more slowly than the early version. So I want to know which processes are happened during App server instance and Administrative server starting.
    Please let me know the detail description about that.
    Thank you.

    Hi..
    I think that the S1AS 7.0 starts more slowly than the early version. So I want to know which processes are happened during App server instance and Administrative server starting.
    Please let me know the detail description about that.
    Thank you.

  • Runtime exception by rmi server

    Hi all,I need a help regarding this issue.iam having the following error on the logs.The only way to fix thi issue was restarting the managed server and it got resolved.Is there any resaon for the cause of this issue,as the code is moving to production i want to make sure to identify what could be the reason to get this error.Any help is greatly appreciated.
    <<WLS Kernel>> <> <> <1300456918029> <BEA-080003> <RuntimeException thrown by rmi server: javax.management.remote.rmi.RMIConnectionImpl.getAttribute(Ljavax.management.ObjectName;Ljava.lang.String;Ljavax.security.auth.Subject;)
    javax.management.RuntimeMBeanException: javax.management.RuntimeMBeanException: MBean getAttribute failed: java.lang.NullPointerException.
    javax.management.RuntimeMBeanException: javax.management.RuntimeMBeanException:MBean getAttribute failed: java.lang.NullPointerException
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.rethrow(DefaultMBeanServerInterceptor.java:856)

    I am suffering the same problem, any fix for this problem??

  • RMI Server Starting pblm in Linux

    Hi,
    When i'm starting to run my RMI application in linux which is showing an error...
    java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
    java.net.SocketException: Connection reset
    But this same programe easly can run in windows

    Just see the administration guide. There is a section for starting and stopping both the inf and midtier components via command line or using the GUI.

  • Exception in Weblogic Server Starting

    Hi all,
    While starting weblogic server, I can see some exception as follows but server is started. Because of this I can't able to deploy OSM cartridges.
    java.sql.SQLSyntaxErrorException: ORA-04092: cannot COMMIT in a trigger
    at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.ja
    va:91)
    at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:1
    33)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
    :206)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:455)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:413)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1034)
    at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.
    java:191)
    at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableSta
    tement.java:950)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
    nt.java:1223)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrep
    aredStatement.java:3386)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStat
    ement.java:3487)
    at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStat
    ement.java:3858)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePrepa
    redStatementWrapper.java:1374)
    at oracle.jdbc.oracore.OracleTypeADT.initMetadata(OracleTypeADT.java:535
    at oracle.jdbc.oracore.OracleTypeADT.init(OracleTypeADT.java:462)
    at oracle.sql.ArrayDescriptor.initPickler(ArrayDescriptor.java:1678)
    at oracle.sql.ArrayDescriptor.<init>(ArrayDescriptor.java:291)
    at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:206)
    at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:175)
    at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:158)
    at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:125)
    at oracle.jdbc.driver.NamedTypeAccessor.otypeFromName(NamedTypeAccessor.
    java:84)
    at oracle.jdbc.driver.TypeAccessor.initMetadata(TypeAccessor.java:89)
    at oracle.jdbc.driver.T4CCallableStatement.allocateAccessor(T4CCallableS
    tatement.java:629)
    at oracle.jdbc.driver.OracleCallableStatement.registerOutParameterIntern
    al(OracleCallableStatement.java:167)
    at oracle.jdbc.driver.OracleCallableStatement.registerOutParameter(Oracl
    eCallableStatement.java:208)
    at oracle.jdbc.driver.OracleCallableStatementWrapper.registerOutParamete
    r(OracleCallableStatementWrapper.java:1584)
    at weblogic.jdbc.wrapper.CallableStatement_oracle_jdbc_driver_OracleCall
    ableStatementWrapper.registerOutParameter(Unknown Source)
    at com.mslv.oms.handler.util.j.prepareStatement(Unknown Source)
    at com.mslv.oms.dataaccesslayer.CallableProxy.prepareStatement(Unknown S
    ource)
    at com.mslv.oms.dataaccesslayer.a.execute(Unknown Source)
    at com.mslv.oms.dataaccesslayer.CallableProxy.execute(Unknown Source)
    at com.mslv.oms.handler.util.e.a(Unknown Source)
    at com.mslv.oms.eventengine.EventDispatcherEJB.processTimeout(Unknown So
    urce)
    at com.mslv.oms.eventengine.EventDispatcher_86q3j1_EOImpl.processTimeout
    (EventDispatcher_86q3j1_EOImpl.java:73)
    at com.mslv.oms.poller.a.handleNotification(Unknown Source)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper
    .handleNotification(DefaultMBeanServerInterceptor.java:1732)
    at javax.management.NotificationBroadcasterSupport.handleNotification(No
    tificationBroadcasterSupport.java:257)
    at javax.management.NotificationBroadcasterSupport$SendNotifJob.run(Noti
    ficationBroadcasterSupport.java:322)
    at javax.management.NotificationBroadcasterSupport$1.execute(Notificatio
    nBroadcasterSupport.java:307)
    at javax.management.NotificationBroadcasterSupport.sendNotification(Noti
    ficationBroadcasterSupport.java:229)
    at javax.management.timer.Timer.sendNotification(Timer.java:1237)
    at javax.management.timer.Timer.notifyAlarmClock(Timer.java:1206)
    at javax.management.timer.TimerAlarmClock.run(Timer.java:1289)
    at java.util.TimerThread.mainLoop(Timer.java:512)
    at java.util.TimerThread.run(Timer.java:462)
    <Nov 22, 2011 3:26:33 PM GMT+05:30> <Error> <oms> <BEA-000000> <util.e: Failed t
    o execute GetOrderTransitionProxy
    com.mslv.oms.dataaccesslayer.ProxyException: ORA-04092: cannot COMMIT in a trigg
    er
    Nested Exception: ORA-04092: cannot COMMIT in a trigger
    Can anybody pls help me to resolve this issue asap...
    Thanks in advance
    Bharathi

    Bharathi;
    The error indicates that a trigger is being executed. OSM DB schema does not make use of triggers at all. Has anyone added triggers to the OSM DB schema? If so this should not be done - modification or direct access of the OSM DB schema is not supported.
    Brian.

  • ClassNotFound Exception during Installation

    I've been installing Java since version 1.0.  So I was quite surprised this morning while attempting to install Java SE 8u25 + NetBeans.  I received a ClassNotFoundException from main() at the start of the installation process.  I am trying to install the 64-bit version on Windows 7.  Any suggestions?  Thanks.

    I know "me too" isn't especially helpful, but I see the same in a slightly different environment.
    2015-01-09: Attempting to install JDK+NB
    My System:
        Processor:            Intel(R) Core(TM) i3-2370M CPU @ 2.40GHz, 2.40GHz
        Installed memory:    4.00GiB (3.87 G usable)
        System type:        64-bit Operating System, x64-based processor  Windows-8.1
    Error:
        Installer:            jdk-8u25-nb-8_0_2-windows-x64.
        Message:            Exception java.lang.NoClassDefFoundError thrown from the
                                UncaughtExceptionHandler in thread "main"
    I have tried the following, without success:
         Completely remove all Java components, try to install the above.  Same failure.
         Install a JRE (both Win32 and Win64 tried).  Same failure.

  • [EJB:015001]Unable to link class while server start up.

    I am getting the below exception during weblogic server start up.
    In the server under autodeploy folder there exist a class - AccountCacheLoaderMDB. I clue less, what is the cause for this exception. Can anyone help me out in solving this issue please,its urgent
    <Jun 2, 2011 10:23:01 AM EDT> <Error> <Deployer> <BEA-149205> <Failed to initialize the application 'gts' due to error weblogic.application.ModuleException: Exception preparing module: EJBModule(autodeploy)
    [EJB:011023]An error occurred while reading the deployment descriptor. The error was:
    Error processing annotations: ..
    weblogic.application.ModuleException: Exception preparing module: EJBModule(autodeploy)
    [EJB:011023]An error occurred while reading the deployment descriptor. The error was:
    Error processing annotations: .
         at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:454)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
         Truncated. see log file for complete stacktrace
    weblogic.utils.ErrorCollectionException:
    There are 1 nested errors:
    weblogic.j2ee.dd.xml.AnnotationProcessException: [EJB:015001]Unable to link class sepact.sepact-app.com.citi.gts.alto.accountservice.service.AccountCacheLoaderMDB in Jar C:\Oracle\user_projects\domains\base_domain\autodeploy : java.lang.NoClassDefFoundError: sepact/sepact-app/com/citi/gts/alto/accountservice/service/AccountCacheLoaderMDB (wrong name: com/citi/gts/alto/accountservice/service/AccountCacheLoaderMDB)
         at weblogic.j2ee.dd.xml.BaseJ2eeAnnotationProcessor.addProcessingError(BaseJ2eeAnnotationProcessor.java:1272)
         at weblogic.j2ee.dd.xml.BaseJ2eeAnnotationProcessor.addFatalProcessingError(BaseJ2eeAnnotationProcessor.java:1277)
         at weblogic.ejb.container.dd.xml.EjbAnnotationProcessor.processAnnotations(EjbAnnotationProcessor.java:168)
         at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processStandardAnnotations(EjbDescriptorReaderImpl.java:332)
         at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:192)
         at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:93)
         at weblogic.ejb.container.deployer.EJBModule.loadEJBDescriptor(EJBModule.java:1210)
         at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:382)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:42)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:609)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:185)
         at weblogic.application.internal.SingleModuleDeployment.prepare(SingleModuleDeployment.java:40)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
         at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:141)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:39)
         at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:187)
         at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
         at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
         at weblogic.j2ee.dd.xml.BaseJ2eeAnnotationProcessor.addProcessingError(BaseJ2eeAnnotationProcessor.java:1271)
         at weblogic.j2ee.dd.xml.BaseJ2eeAnnotationProcessor.addFatalProcessingError(BaseJ2eeAnnotationProcessor.java:1277)
         at weblogic.ejb.container.dd.xml.EjbAnnotationProcessor.processAnnotations(EjbAnnotationProcessor.java:168)
         at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processStandardAnnotations(EjbDescriptorReaderImpl.java:332)
         at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:192)
         Truncated. see log file for complete stacktrace
    >
    ===============================================================
    Here is the message driven bean.
    package com.xxx.gts.alto.accountservice.service;
    import com.xxx.gts.alto.accountservice.adapter.AccountAdapter;
    import com.xxx.gts.alto.accountservice.util.AccBeanUtil;
    import com.xxx.gts.alto.accountservice.util.AccountConstants;
    import com.xxx.gts.alto.accountservice.util.AccountLoader;
    import org.apache.log4j.Logger;
    import org.springframework.beans.factory.BeanFactory;
    import javax.ejb.ActivationConfigProperty;
    import javax.ejb.EJB;
    import javax.ejb.MessageDriven;
    import javax.ejb.TransactionAttribute;
    import javax.ejb.TransactionAttributeType;
    import javax.ejb.TransactionManagement;
    import javax.ejb.TransactionManagementType;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    import javax.jms.TextMessage;
    * MDB for the Account Cache Loader.
    @MessageDriven(mappedName = "AccountCacheLoaderQueue", activationConfig = {@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),@ActivationConfigProperty(propertyName = "destinationName", propertyValue = "AccountCacheLoaderQueue")})
    @TransactionManagement(value = TransactionManagementType.CONTAINER)
    @TransactionAttribute(value = TransactionAttributeType.NOT_SUPPORTED)
    public class AccountCacheLoaderMDB implements MessageListener {
    private static Logger logger = Logger.getLogger(AccountCacheLoaderMDB.class.getName());
    private static final String LOCAL_ADAPATER = AccBeanUtil.getProperty(AccountConstants.ADAPTER_ID);
    private static final String TOKEN_SEPARATOR = ","; // \\s
    @EJB
    private BeanFactory beanFactory;
    public void onMessage(Message message) {
    logger.debug("Entering onMessage of AccountCacheLoaderMDB");
    try {
    if (message instanceof TextMessage) {
    TextMessage tmsg = (TextMessage) message;
    String[] msgArr = tmsg.getText().split(TOKEN_SEPARATOR);
    logger.debug("Trying to get AccountAdapter");
    AccountAdapter acctAdapter = (AccountAdapter) beanFactory.getBean(LOCAL_ADAPATER);
    if (acctAdapter == null) {
    throw new RuntimeException("Account Adapter cannot be determined.");
    for (String msg : msgArr) {
    if (msg.equalsIgnoreCase(AccountConstants.ACC_RELOAD)) {
    logger.debug("Calling AccountLoader.load");
    AccountLoader.load(acctAdapter);
    } else if (msg.equalsIgnoreCase(AccountConstants.BIC_RELOAD)) {
    logger.debug("Calling AccountLoader.loadBicData");
    AccountLoader.loadBicData(acctAdapter);
    } catch (Exception e) {
    logger.error("Error while loading Account.", e);
    throw new RuntimeException(e);
    logger.debug("Exiting onMessage of AccountCacheLoaderMDB");
    can any one throw some light please...its urgent

    Your class seems to be in the wrong folder structure.
    instead of sepact/sepact-app/com/citi/gts/alto/accountservice/service/ it needs to be in com/citi/gts/alto/accountservice/service/ which matches the folder structure.

  • RMI server fails on a few PCs, works on others

    I have a small RMI server, started on various PC, to which a UNIX server connects to send them messages.
    On each PC I have :
    - An RMI registry.
    - A Java RMI server, ready to receive messages from the UNIX machine.
    All the PC are running Win NT 4 SP6, and the JRE 1.3.1.
    On some PC, when the RMI server receives a RMI call from the UNIX machine, I get this error on the UNIX side :
    java.rmi.UnmarshalException: Error unmarshaling return; nested exception is:
    java.io.InvalidClassException: pop2PcServer_Stub; Local class not compat
    ible: stream classdesc serialVersionUID=2 local class serialVersionUID=385818717
    3882730883
    at sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.java:107)
    at java.rmi.Naming.lookup(Naming.java:60)
    at pop2Pc.main(pop2Pc.java:41)
    It happens every time when these specific PCs are involved.
    I tried everything : the programs don't use a security manager, the PC part starts the registry itself (instead of relying on a separate rmiregistry process). Whatever I do. I can't make the RMI process work correctly on these PC.
    I really don'ty understand, because my program is identical in every case.

    Unfortunately, this is already the case. The classe have been all compiled on the Unix server, and every time they are all bundled in a jar file which is on every PC the same.
    On all the PC I also bundle the JRE 1.3.1 in a subdirectory of my program. With the PATH and CLASSPATH variables I directly point to it, as well as to the jar file.

  • Problem connecting RMI-Server using a servlet

    Hi All..
    I have a RMI-client server model woring fine in AIX box.I am currently in a need to create one web client(may be with servlet or JSP).
    I wrote a sample servlet which try to connect to the RMI server. But when I run the servlet Its simply try to connect and then wait for unlimited time,not even print any exception/error.
    Both my RMI sevrer and Tomcat are in the same box.
    I am sending the servlet code for your reference.
    import java.rmi.*;
    import java.rmi.registry.Registry;
    import java.rmi.registry.LocateRegistry;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import ir77.mon.engine.*;
    public class WebClient extends HttpServlet
    public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
    XmlServerIntf xmlServerIntf = null;
    PrintWriter out = res.getWriter();
    res.setContentType("text/plain");
    try{
    out.println("Connecting to server......");
    //Seems this one is sufficient.(either this code or the below one)
    //String strServerUrl = "rmi://" + "192.168.100.22" + "/ir77.mon.engine";
    //xmlServerIntf = (XmlServerIntf) Naming.lookup(strServerUrl);
    //Try with this one also
    Registry reg = LocateRegistry.getRegistry("192.168.100.22", 2004);
    xmlServerIntf = (XmlServerIntf) reg.lookup("rmi://192.168.100.22/ir77.mon.engine");
    out.println("Connected to server");
    catch (Exception e){
    System.out.println("Exception in WebClient"+e);
    when I run the servlet in the browser with "http://192.168.100.22:8080/WebClient" its simply prints " Connecting to server......" and waits.
    Note : 192.168.100.22 - where my rmi server starts and 2004 -where I created by rmiregistry.I created it using LocateRegistry.createRegistry(2004);
    I have tried starting tomcat with "-security" option too but no responds as well.
    Do I have to provide some grant permission in catlina.policy file?If yes what?
    currently I have tried with giving all permission..
    Do I need to change the RMI server code?
    Any help will be highly appreciated....

    Hi genady,
    Oh....Ya I like to...I thought no body was interested...as I didn't get any reply from anybody....
    Well The first thing is that with the look up method in the servlet
    it should be like :
    Registry reg = LocateRegistry.getRegistry("ip address of the rmi server", port number);
    RMIServerInterface = (type cast with RMIServerInterface) reg.lookup("rmi binding string");
    Now you are able to get the server interface object & you can call any method.
    Next you have to provide the grant permission in the catalina.policy file to the folder where you have your application like....
    grant codeBase "file:${catalina.home}/webapps/ROOT/WEB-INF/classes/-" {
    permission java.security.AllPermission;
    Or you can give specific permissions also.
    Finally you have to run the tomcat as : $catalina.sh start -security
    Note: One more thing you have to keep in mind that's the structure of your application. ie com.mon.yourapp.......u have to create the same structure in tomcat's classes folder .
    Its done...........

  • "server starting up" message after update

    Hi All,
    I've just updated my server from 10.6.5 to 10.6.7 and upon restart I can't connect to my wikis or blogs. I just get a grey screen and a spinning wheel saying "server starting up". I have tried the Apple solution listed here, as I do host my Collaboration folder on a sperate volume:
    http://support.apple.com/kb/TS3757
    and the post from Tarnyinc
    https://www.tarnyinc.com/groups/trainingcenter/weblog/03f55/Wiki__Blog_Surprise_ for_1064_Update.html
    but to no avail.
    Here is the last output from the wikid error log
    2011-05-26 14:15:19+0100 [-] Main loop terminated.
    2011-05-26 14:15:19+0100 [-] Server Shut Down.
    2011-05-26 14:15:55+0100 [-] Log opened.
    2011-05-26 14:15:55+0100 [-] twistd 8.2.0 (/usr/bin/python 2.6.1) starting up.
    2011-05-26 14:15:55+0100 [-] reactor class: twisted.internet.selectreactor.SelectReactor.
    2011-05-26 14:15:55+0100 [-] Current log level is warn
    2011-05-26 14:15:55+0100 [-] twisted.web.server.Site starting on 8086
    2011-05-26 14:15:55+0100 [-] twisted.web2.channel.http.HTTPFactory starting on 8087
    2011-05-26 14:15:55+0100 [-] Starting
    2011-05-26 14:15:56+0100 [-] Unhandled error in Deferred:
    2011-05-26 14:15:56+0100 [-] Unhandled Error
        Traceback (most recent call last):
          File "/usr/share/caldavd/lib/python/twisted/application/service.py", line 278, in startService
            service.startService()
          File "/usr/share/wikid/lib/python/apple_utilities/service.py", line 153, in startService
            mailLooper = self._mailingListFlushLooper.start(mailFlushInterval)
          File "/usr/share/caldavd/lib/python/twisted/internet/task.py", line 83, in start
            self()
          File "/usr/share/caldavd/lib/python/twisted/internet/task.py", line 114, in __call__
            d = defer.maybeDeferred(self.f, *self.a, **self.kw)
        --- <exception caught here> ---
          File "/usr/share/caldavd/lib/python/twisted/internet/defer.py", line 104, in maybeDeferred
            result = f(*args, **kw)
          File "/usr/share/wikid/lib/python/apple_utilities/MailUtilities.py", line 312, in flushMailingLists
            sharedMailingListManager().rebuildList()
          File "/usr/share/wikid/lib/python/apple_utilities/MailUtilities.py", line 247, in rebuildList
            self.updateListWithEntity(aGroup, rebuilding = True)
          File "/usr/share/wikid/lib/python/apple_utilities/MailUtilities.py", line 265, in updateListWithEntity
            users = groupExpander(entity.getAssociatedEntities())
          File "/usr/share/wikid/lib/python/apple_utilities/MailUtilities.py", line 604, in groupExpander
            return expandNames(shortNames)
          File "/usr/share/wikid/lib/python/apple_utilities/MailUtilities.py", line 602, in expandNames
            members.extend(expandNames([record.recordName() for record in aGroup.members()]))
        exceptions.ValueError: NSInvalidArgumentException - -[WPMultiValue lastObject]: unrecognized selector sent to instance 0x106f06630
    2011-05-26 14:15:56+0100 [-] in migration. repo version is: 23
    Any help would be appreciated.
    Mark

    I am having a similar issue as you marktech, with colaboration folder on a different drive.
    My temporary solution is to stop and start web services on the server, and the message goes away and users can log in.  Problem comes back on a server restart.
    Swamped here so have not been able to apply troubleshooting techniques.
    What I have checked is verifying permissions on collaboration folder.  Seems like I had to re-apply permissions after any significant update.
    My final resolution will be to migrate from the ssd hard drive (the extra speed is not any significant impact for us) to a 1TB hard drive and migrate data back over to a single drive in original directory locations.  appologies have not had ample time to research the issues....

  • Java.rmi.server.ExportException...

    I am making a bridge code.
    the server is in a package called bridgeserver.
    The client in a package called bridgeclient.
    I have compiled all files in the packages.
    I do rmic bridgeserver.BridgeServer(name of server program) from jdk1.3
    I do c:\jdk1.3 >rmic bridgeclient\BridgeClient(name of client).
    then start rmiregistry
    then when I do java bridgeserver.BridgeServer(runnign thr server) I get the follwowing exceptions:
    java.rmi.server.ExportException : Unable to access remote reference,
    nested exception is
    java.rmi.server.SkeletonNotFoundException:
    Skeleton class not found :bridgeserver.BridgeServer_Skel;nested exception is ;
    java.lang.ClassNotFoundException :bridgeserver.BridgeServer-Skel
    Is there sometyhign wrong with the classpath?

    on your rmic line include the option
    -v1.2
    This should get rid of skeleton junk. (But of course may uncover other problems.)

  • 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.

  • RMI server and client in one application - Exceptions during some calls

    I wrote an application, which is an RMI-Server (Server1), and another separate application, which is an RMI-Client (Client1). Because I wont use dynamic class loading, I gave the client beside the interface.java also an interface_implementation.java, which is only a dummy of the original interface_implementation of the server. This dummy contains only declarations of the methods (parameters and return values) and no functional code. From this dummy the _stub.class is generated, and it works fine - no problem.
    Now I want to modify Client1 to become also an RMI-Server (Server2) for a second, separate Client (Client2), the methods used are different from the first RMI connection. This Client2 uses a dummy of the implementation of Server2 in the same way as described above. The application Client1+Server2 only has to "translate" the calls from Client2 to Server2 into calls of Client1 to Server1 (Server1 is not changed at all). In case of primitive method parameters or return values this chain of RMI-applications works fine, but in case of more complex structures (my own classes) during the call of Client1 to Server1 an "ClassNotFoundException: access denied to class loader" occurs by running through the stub. Both stub.classes are found, all of the applications know the objects needed, the call of Client1 to Server1 is exactly the same call as it was during the simple version (only Server1 and Client1).
    Does anybody know, why this exception occurs and how I can overcome this ?
    Axel

    I figured out a solution - it's a problem of policies. In detail: Server1's codebase entry (file:) refers to the class directory of Server1's project. In the simple case of only Client1, which has no codebase entry, it works fine without a file permission on the side of Server1. In the complex case of Client1+Server2, which has to have a codebase entry (file:) refering to the class directory of the Server2's project on a separate machine, for exactly the same method call from Client1 to Server1 a file permission entry on the side of Server1 is needed for Server1's class directory. But WHY ???
    It seems to be a little confusing with the codebase entries, many of the posts are contrary to others and to my personal experiences. Some comments given by Adrian Colley throw a little light upon some aspects. Is there anybody, who can explain the whole topic, when, why, and which part of RMI application deals with codebase entries, also in case of not dynamic code downloading ? May be there is also a reference into the java docs, which I didn't found up to now.
    Thanks in advance
    Axel

  • Starting and stopping an RMI server

    I'm trying to figure out how to best stop and start my server.
    My server class has two executions. One for starting and one for stopping.
    Start Steps:
    1) create my remote object ( an extension of UnicastRemoteObject )
    2) create a registry ( LocateRegistry.create() )
    3) bind my remote object
    When I run this start method of my RMI server class, everything get's set up. I'm not doing any sort of waiting loop or anything to determine the lifecycle of my server. My understanding is that my rmiregistry, and my registered remote object, will continue to be available indefinitely. Perhaps this is incorrect.
    Stop Steps:
    When I want to stop the server, I'm calling my stop method. This is another invocation of my server class, so it's a separate JVM. In this stop method I want to do the following steps:
    1) get the registry that I created earlier, by port number
    2) get my remote object via reg.lookup()
    3) unbind my remote obect ( reg.unbind() )
    4) unexport my remote object ( UnicastRemoteObject.unexport ( myRemoteObj, true ) )
    My concerns here are whether this makes sense. Does the unexport method work like this? i.e. from a remote handle to the object -- I'm not in the local JVM when the stop method runs. Also, does the rmiregistry "just die" at this point? It's not holding anything and when my method exits there's no reference to it anywhere. Except maybe in client code . . .

    My understanding is that my rmiregistry, and my registered remote object, will continue to be available indefinitely. Perhaps this is incorrect.That's correct as long as you store static references to them both in the server JVM.
    My concerns here are whether this makes sense. Does the unexport method work like this? i.e. from a remote handle to the objectNo. You have to have the actual remote object. You could make shutdown() an RMI method itself.
    Also, does the rmiregistry "just die" at this point?No, you have to unexport that as well.

Maybe you are looking for

  • LCD on Photosmart 5510e is all white- need layout of buttons so I can reconnect wireless settings

    My printer is out of warranty and the LCD screen is all light grey (failure).  I've lost the wireless network and cannot navigate what areas to press because all instruction booklets, manuals, and resources on the web reference..."follow the prompts

  • Sound goes out on my iPhone

    SOund goes out on my iPhone 6, and it effects the Alarm as well.  Playing Solitary...there's no sound until I re-boot my phone.  Why?

  • Inactive employees not showing in the organisational structure

    We have employees who are in positions but may be on extended unpaid leaves of absence which means they have an inactive employment status.  In the organisational structure their position is there, but their name is not displayed.  Does anyone know h

  • Picture file handling between Aperture and Photoshop

    Hello I have transferred several photos via "edit in external editor" from aperture to photoshop. In photoshop I made different operations: a) just looking (no special manipulations) -> no saving b) manipulations on a particular photo -> saving via "

  • Want new Mac Pro With Snow Leopard

    I am after a new Mac Pro with Snow Leopard. I understand that some of the newer Mac Pros can have Snow Leopard installed.  Some tell me that in the recent past Apple made a change that made installation of Snow Leopard difficult or impossible on a Ma