ClassLoader problems over IIOP

I'm currently porting our application from WebSphere to WebLogic and I have got the following issue concerning class loading on the client side:
org.omg.CORBA.MARSHAL: vmcid: SUN minor code: 211 completed: Maybe
     at com.sun.corba.se.impl.logging.ORBUtilSystemException.valuehandlerReadException(ORBUtilSystemException.java:6500)
     at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1045)
     at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
     at com.j2fe.general.interfaces._RegistryBeanRemote_Stub.getFacade(Ljava.lang.String;)Lcom.j2fe.general.HibernateFacade;(Unknown Source)
     at com.j2fe.ui.base.model.GSApplication.setAdditionalFacadeProxies(GSApplication.java:505)
     at com.j2fe.ui.base.model.GSApplicationServerConnectionParser$1.run(GSApplicationServerConnectionParser.java:289)
     at javax.security.auth.Subject.doAs(Subject.java:337)
     at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:118)
     at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
     at com.j2fe.ui.base.model.GSApplicationServerConnectionParser.createApplication(GSApplicationServerConnectionParser.java:320)
     at com.j2fe.ui.base.jobs.ConnectAndParseJob.run(ConnectAndParseJob.java:97)
     at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76)
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
     at com.sun.corba.se.impl.io.ObjectStreamClass.readResolve(ObjectStreamClass.java:316)
     at com.sun.corba.se.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:403)
     at com.sun.corba.se.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:327)
     at com.sun.corba.se.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:293)
     at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
     ... 10 more
Caused by: java.lang.reflect.InvocationTargetException
     at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
     at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
     at com.sun.corba.se.impl.io.ObjectStreamClass.readResolve(ObjectStreamClass.java:314)
     ... 14 more
Caused by: java.lang.ClassNotFoundException
     at weblogic.iiop.ProxyDesc.readResolve(ProxyDesc.java:47)
     ... 17 more
Caused by: java.lang.IllegalArgumentException: interface com.j2fe.general.HibernateFacade is not visible from class loader
     at java.lang.reflect.Proxy.getProxyClass(Proxy.java:345)
     at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:564)
     at weblogic.iiop.ProxyDesc.readResolve(ProxyDesc.java:45)
     ... 17 more
Is it a problem for WebLogic to transfere Proxy classes over IIOP? The com.j2fe.general.HibernateFacade-interface is available on client side and can be loaded by the application class loader (which is an Eclipse application).
The strange thing is that it's possible to do a Class.forName with that class immediately before and after the EJB-call which should get that proxy class from the server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

Thomas Brandl <> writes:
Proxy is only supported in 9.x, this looks like a trace from 8.1
andy
I'm currently porting our application from WebSphere to WebLogic and I have got the following issue concerning class loading on the client side:
org.omg.CORBA.MARSHAL: vmcid: SUN minor code: 211 completed: Maybe
     at com.sun.corba.se.impl.logging.ORBUtilSystemException.valuehandlerReadException(ORBUtilSystemException.java:6500)
     at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1045)
     at com.sun.corba.se.impl.encoding.CDRInputStream.read_value(CDRInputStream.java:253)
     at com.j2fe.general.interfaces._RegistryBeanRemote_Stub.getFacade(Ljava.lang.String;)Lcom.j2fe.general.HibernateFacade;(Unknown Source)
     at com.j2fe.ui.base.model.GSApplication.setAdditionalFacadeProxies(GSApplication.java:505)
     at com.j2fe.ui.base.model.GSApplicationServerConnectionParser$1.run(GSApplicationServerConnectionParser.java:289)
     at javax.security.auth.Subject.doAs(Subject.java:337)
     at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:118)
     at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
     at com.j2fe.ui.base.model.GSApplicationServerConnectionParser.createApplication(GSApplicationServerConnectionParser.java:320)
     at com.j2fe.ui.base.jobs.ConnectAndParseJob.run(ConnectAndParseJob.java:97)
     at org.eclipse.core.internal.jobs.Worker.run(Worker.java:76)
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
     at com.sun.corba.se.impl.io.ObjectStreamClass.readResolve(ObjectStreamClass.java:316)
     at com.sun.corba.se.impl.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:403)
     at com.sun.corba.se.impl.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:327)
     at com.sun.corba.se.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:293)
     at com.sun.corba.se.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1034)
     ... 10 more
Caused by: java.lang.reflect.InvocationTargetException
     at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown Source)
     at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown Source)
     at com.sun.corba.se.impl.io.ObjectStreamClass.readResolve(ObjectStreamClass.java:314)
     ... 14 more
Caused by: java.lang.ClassNotFoundException
     at weblogic.iiop.ProxyDesc.readResolve(ProxyDesc.java:47)
     ... 17 more
Caused by: java.lang.IllegalArgumentException: interface com.j2fe.general.HibernateFacade is not visible from class loader
     at java.lang.reflect.Proxy.getProxyClass(Proxy.java:345)
     at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:564)
     at weblogic.iiop.ProxyDesc.readResolve(ProxyDesc.java:45)
     ... 17 more
Is it a problem for WebLogic to transfere Proxy classes over IIOP? The com.j2fe.general.HibernateFacade-interface is available on client side and can be loaded by the application class loader (which is an Eclipse application).
The strange thing is that it's possible to do a Class.forName with that class immediately before and after the EJB-call which should get that proxy class from the server.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

Similar Messages

  • Interactive report performance problem over database link - Oracle Gateway

    Hello all;
    This is regarding a thread Interactive report performance problem over database link that was posted by Samo.
    The issue that I am facing is when I use Oracle function like (apex_item.check_box) the query slow down by 45 seconds.
    query like this: (due to sensitivity issue, I can not disclose real table name)
    SELECT apex_item.checkbox(1,b.col3)
    , a.col1
    , a.col2
    FROM table_one a
    , table_two b
    WHERE a.col3 = 12345
    AND a.col4 = 100
    AND b.col5 = a.col5
    table_one and table_two are remote tables (non-oracle) which are connected using Oracle Gateway.
    Now if I run above queries without apex_item.checkbox function the query return or response is less than a second but if I have apex_item.checkbox then the query run more than 30 seconds. I have resolved the issues by creating a collection but it’s not a good practice.
    I would like to get ideas from people how to resolve or speed-up the query?
    Any idea how to use sub-factoring for the above scenario? Or others method (creating view or materialized view are not an option).
    Thank you.
    Shaun S.

    Hi Shaun
    Okay, I have a million questions (could you tell me if both tables are from the same remote source, it looks like they're possibly not?), but let's just try some things first.
    By now you should understand the idea of what I termed 'sub-factoring' in a previous post. This is to do with using the WITH blah AS (SELECT... syntax. Now in most circumstances this 'materialises' the results of the inner select statement. This means that we 'get' the results then do something with them afterwards. It's a handy trick when dealing with remote sites as sometimes you want the remote database to do the work. The reason that I ask you to use the MATERIALIZE hint for testing is just to force this, in 99.99% of cases this can be removed later. Using the WITH statement is also handled differently to inline view like SELECT * FROM (SELECT... but the same result can be mimicked with a NO_MERGE hint.
    Looking at your case I would be interested to see what the explain plan and results would be for something like the following two statements (sorry - you're going have to check them, it's late!)
    WITH a AS
    (SELECT /*+ MATERIALIZE */ *
    FROM table_one),
    b AS
    (SELECT /*+ MATERIALIZE */ *
    FROM table_two),
    sourceqry AS
    (SELECT  b.col3 x
           , a.col1 y
           , a.col2 z
    FROM table_one a
        , table_two b
    WHERE a.col3 = 12345
    AND   a.col4 = 100
    AND   b.col5 = a.col5)
    SELECT apex_item.checkbox(1,x), y , z
    FROM sourceqry
    WITH a AS
    (SELECT /*+ MATERIALIZE */ *
    FROM table_one),
    b AS
    (SELECT /*+ MATERIALIZE */ *
    FROM table_two)
    SELECT  apex_item.checkbox(1,x), y , z
    FROM table_one a
        , table_two b
    WHERE a.col3 = 12345
    AND   a.col4 = 100
    AND   b.col5 = a.col5If the remote tables are at the same site, then you should have the same results. If they aren't you should get the same results but different to the original query.
    We aren't being told the real cardinality of the inners select here so the explain plan is distorted (this is normal for queries on remote and especially non-oracle sites). This hinders tuning normally but I don't think this is your problem at all. How many distinct values do you normally get of the column aliased 'x' and how many rows are normally returned in total? Also how are you testing response times, in APEX, SQL Developer, Toad SQLplus etc?
    Sorry for all the questions but it helps to answer the question, if I can.
    Cheers
    Ben
    http://www.munkyben.wordpress.com
    Don't forget to mark replies helpful or correct ;)

  • Syncing problem over cloud for all my devices

    I have severe syncing problems over the cloud with all iWorks apps (Pages, Numbers, Keynote) across ALL my devices (iMac, MacBook, iPad2, IPhone4) and even on web: It JUST DOESN'T WORK!!!
    Internet works perfectly, Docs sync is set to ON in every device, but since 6 October 2012, syncing was stoped for unknonw reasons.
    I tried to find someone to contact for by email, but it was impossible. So I ended up here ...
    Can help someone?

    For each device, backup first, then on the device use Settings > General > Software Update. Each one still has to download the update individually, but they are smaller files so should download more reliably.
    tt2

  • Enums over IIOP issue

    When trying to serialize java5 enum types over iiop (e.g. using the wlogic.jar client), you'll get a Mismatched serialization UIDs-exception (tested with WLS 10.3). This derives from a known bug or an omission in the java5 specification. There's a good description here, unfortunately in german only:
    http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6277781
    You can either use weblogic.jar to avoid IIOP or overwrite the default serializer class as a workaround. But I would like to know if the issue is already adressed at Oracle and if there will be a fix in the near future.
    Regards,
    Thomas

    No information on this issue?

  • PortableRemoteObject ClassLoader problems in pe8.1

    Hi, I'm in the process of porting a Sun Java Application Server 7 to 8.1 PE and I'm running into ClassLoader problems when I make remote calls into the server. The situation is a little odd in that I've exported a PortableRemoteObject from the BootstrapServlet (too many reasons to go into detail, but it all worked in 7 just fine). Most of the calls I make into the remove server work fine, exception I get ClassNotFound exceptions in the strangest places. For example, I have a SearchCriteria class that I pass as a parameter. It makes it to the server. But, its inner class, Constraint which is static and Serializable, gets a ClassNotFoundException. So I made it Externalizable and finally figured out what was going on.
    The SearchCriteria class loader was set to the WebappClassLoader. But the ObjectInput of readObject was set to AppClassLoader. Now why the AppClassLoader could find SearchCriteria and not its nested class, I do not know.
    So my question is, is there any way to tell the ORB to use the WebappClassLoader instead of the AppClassLoader?

    More information. If I update the calling threads class loader to be the same as the objects class loader, the unaccessible classes can be loaded.
      public void readExternal(ObjectInput in)  throws IOException, ClassNotFoundException
        Thread.currentThread().setContextClassLoader(getClass().getClassLoader());Does this make sense? Seems so out of place.

  • RMI over IIOP

    Hi all...
    I am now trying a program with RMI over IIOP. My server is behined a firewall and proxy and client will be running out side the network. So in this situation I want to allow this particular client through the proxy. I am not sure whether the Proxies like ISA, MS Proxy, Wingate, iPlanet and Apache proxy will allow IIOP protocol to route through the proxy. Also How can I ensure security? Does IIOP provides any security?
    Please help me by giving some comments on this.
    Any suggestions are appreciable.
    regards,
    Sankaran

    Like in all normal RMI apps you will need open the firewall ports needed to communicate to the server on the firewall..

  • Transaction over IIOP ?

    Hi,
              I read in the e-docs that WLE does not support transactions over IIOP, because
              "the requirement for transaction propagation from the client is in question".
              There is the OTS (currently, we are talking about version 1.2) out for quite a
              while. Why exactly are transactions not supported? Will there be an OTS
              conformant implementation in WLE in the near future?
              My source is http://e-docs.bea.com/wls/docs61/rmi_iiop/API_rmi_iiop.html#1050737
              "While RMI over IIOP does allow CORBA/IDL clients to access EJBeans, the
              following services will not be available:
              * EJB transaction services
              * EJB security services"
              Cheers,
              Jörg
              

    I think this may be coming in the next release or perhaps even a service pack.
              Post to the "rmi-iiop" group for exact info.
              Joerg Bartholdt wrote:
              > Hi,
              >
              > I read in the e-docs that WLE does not support transactions over IIOP, because
              > "the requirement for transaction propagation from the client is in question".
              >
              > There is the OTS (currently, we are talking about version 1.2) out for quite a
              > while. Why exactly are transactions not supported? Will there be an OTS
              > conformant implementation in WLE in the near future?
              >
              > My source is http://e-docs.bea.com/wls/docs61/rmi_iiop/API_rmi_iiop.html#1050737
              > "While RMI over IIOP does allow CORBA/IDL clients to access EJBeans, the
              > following services will not be available:
              > * EJB transaction services
              > * EJB security services"
              >
              > Cheers,
              > Jörg
              

  • JMS over iiop -- org.omg.CORBA.UNKNOWN

    I have simple java client which tries to lookup a jms QueueConnectionFactory
    over iiop .
    The code is
    ht.put(
    Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.cosnaming.CNCtxFactory" );
    ht.put( Context.PROVIDER_URL,"iiop://222.222.222.222:1111" );
    ctx = new InitialContext( ht );
    qConnectionFactory = (QueueConnectionFactory) ctx.lookup( "My queue con
    factory"); < -- this line cause a
    org.omg.CORBA.UNKNOWN: minor code: 0 completed: Maybe
    at java.lang.Class.newInstance0(Native Method)
    at java.lang.Class.newInstance(Class.java:237)
    at
    com.sun.corba.se.internal.iiop.ReplyMessage.getSystemException(ReplyMessage.
    java:93)
    at
    com.sun.corba.se.internal.iiop.ClientResponseImpl.getSystemException(ClientR
    esponseImpl.java:83)
    at
    com.sun.corba.se.internal.corba.RequestImpl.doInvocation(RequestImpl.java:32
    1)
    at com.sun.corba.se.internal.corba.RequestImpl.invoke(RequestImpl.java:223)
    at org.omg.CosNaming._NamingContextStub.resolve(_NamingContextStub.java:156)
    at com.sun.jndi.cosnaming.CNCtx.callResolve(CNCtx.java:368)
    at com.sun.jndi.cosnaming.CNCtx.lookup(CNCtx.java:417)
    at com.sun.jndi.cosnaming.CNCtx.lookup(CNCtx.java:395)
    at javax.naming.InitialContext.lookup(InitialContext.java:350)
    at Jms.<init>(Jms.java:75)
    at Jms.main(Jms.java:22)
    Anybody know if looking up JMS con factories is ok on iiop in WLs61sp2 ?
    Thanks

    "golibaar" <[email protected]> writes:
    JMS over IIOP is not supported, not required by the spec and will not work.
    This is a WLS 7.1 feature.
    andy
    I have simple java client which tries to lookup a jms QueueConnectionFactory
    over iiop .
    The code is
    ht.put(
    Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.cosnaming.CNCtxFactory" );
    ht.put( Context.PROVIDER_URL,"iiop://222.222.222.222:1111" );
    ctx = new InitialContext( ht );
    qConnectionFactory = (QueueConnectionFactory) ctx.lookup( "My queue con
    factory"); < -- this line cause a
    org.omg.CORBA.UNKNOWN: minor code: 0 completed: Maybe
    at java.lang.Class.newInstance0(Native Method)
    at java.lang.Class.newInstance(Class.java:237)
    at
    com.sun.corba.se.internal.iiop.ReplyMessage.getSystemException(ReplyMessage.
    java:93)
    at
    com.sun.corba.se.internal.iiop.ClientResponseImpl.getSystemException(ClientR
    esponseImpl.java:83)
    at
    com.sun.corba.se.internal.corba.RequestImpl.doInvocation(RequestImpl.java:32
    1)
    at com.sun.corba.se.internal.corba.RequestImpl.invoke(RequestImpl.java:223)
    at org.omg.CosNaming._NamingContextStub.resolve(_NamingContextStub.java:156)
    at com.sun.jndi.cosnaming.CNCtx.callResolve(CNCtx.java:368)
    at com.sun.jndi.cosnaming.CNCtx.lookup(CNCtx.java:417)
    at com.sun.jndi.cosnaming.CNCtx.lookup(CNCtx.java:395)
    at javax.naming.InitialContext.lookup(InitialContext.java:350)
    at Jms.<init>(Jms.java:75)
    at Jms.main(Jms.java:22)
    Anybody know if looking up JMS con factories is ok on iiop in WLs61sp2 ?
    Thanks

  • Transactions over IIOP?

    Hi,
    I read in the e-docs that WLE does not support transactions over IIOP,
    because "the requirement for transaction propagation from the client is
    in question".
    There is the OTS (currently, we are talking about version 1.2) out for
    quite a while. Why exactly are transactions not supported? Will there be
    an OTS conformant implementation in WLE in the near future?
    My source is
    http://e-docs.bea.com/wls/docs61/rmi_iiop/API_rmi_iiop.html#1050737
    It says: "While RMI over IIOP does allow CORBA/IDL clients to access
    EJBeans, the following services will not be available:
    * EJB transaction services
    * EJB security services"
    Cheers,
    Marcus

    Marcus Wittig <[email protected]> writes:
    I read in the e-docs that WLE does not support transactions over IIOP,
    because "the requirement for transaction propagation from the client
    is in question".
    There is the OTS (currently, we are talking about version 1.2) out for
    quite a while. Why exactly are transactions not supported? Will there
    be an OTS conformant implementation in WLE in the near future?You are referencing the WLS docs but refer to WLE, which is it you
    want?
    OTS will be supported in WLS 7.0. However, the JDK client does not
    support OTS, so client-demarcated transactions (as opposed to
    server-server) will still be problematic. We will almost certainly
    provide the explict OTS bindings for clients so that it can be used
    from C++ clients, however this is somewhat cumbersome for J2EE
    clients.
    andy

  • Implicit context propagation from JSP/EJB to RMI over IIOP?

    Is there a way to implicitly send information, such as a UID, over IIOP. We
    don't want/need the overhead of transactions but would like to embed this
    UID in all threads from where they started...through to other VMs on other
    hosts. This is to be used for monitoring the application.
    Any help would be greatly appreciated!!
    Shane

    Shane wrote:
    Does this get propagated to RMI servers as well...not just from EJB to EJB??Yes.
    >
    And, does using SSL create much extra overhead?Yes.
    >
    >
    "Eduardo Ceballos" <[email protected]> wrote in message
    news:[email protected]..
    In WLS 6.0, you can use SSL. With SSL, the identity of the caller ispropagated along with the request.
    Shane wrote:
    Is there a way to implicitly send information, such as a UID, over IIOP.
    We
    don't want/need the overhead of transactions but would like to embedthis
    UID in all threads from where they started...through to other VMs onother
    hosts. This is to be used for monitoring the application.
    Any help would be greatly appreciated!!
    Shane

  • 64-bit JNI C++ to JAVA invocation multiple threads classloader problem

    Hi ALL,
    I have a C++ app that invokes Java classes on 64-bit Solaris 10 with 64-bit JVM.
    Here is the problem:
    The native non-main (not the thread that initializes the JVM) threads would not be able to find any user-define class.
    Here are the symptoms and observations:
    1. JNIEnv::ExceptionDescribe() showed the following StackOverflowError:
    Exception in thread "Thread-0" java.lang.StackOverflowError
            at java.util.Arrays.copyOf(Arrays.java:2734)
            at java.util.Vector.ensureCapacityHelper(Vector.java:226)
            at java.util.Vector.addElement(Vector.java:573)
            at java.lang.ClassLoader.addClass(ClassLoader.java:173)
            at java.lang.ClassLoader.defineClass1(Native Method)
            at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
            at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
            at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
            at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
            at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
            at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)2. The "main thread" that instantiates the JVM has no problem finding and loading any class or method
    3. But the other threads (non-main threads) would not be able to find the user-defined classes unless the classes were already loaded by the main thread.
    4. The non-main threads can find the "standard" java classes with no problem
    5. The same app ran fine on 32-bit system.
    6. Except for the JVM reference is global, each thread acquired JNIEnv by either GetEnv() or AttachCurrentThread().
    Any idea why it is a problem with 64-bit?
    I have the sample program to reproduce this issue in this thread: http://forums.sun.com/thread.jspa?messageID=10885363&#10885363. That was the original thread I raised but I have narrowed it down to a more concrete scenario. That's why I am creating this new thread. I hope this does not break any rule on this forum. If it does, I apologize.
    I really appreciate it if anyone can provide any help/suggestion.
    Regards,
    - Triet

    Here is the sample program. Again, this works on 32-bit but not 64-bit.
    #include <string>
    #include "jni.h"
    #include "TestThread.h"
    static JavaVM *g_pjvm = NULL;  /* denotes a Java VM */
    static JNIEnv *g_penv = NULL;  /* pointer to native method interface */
    void initJVM(char** jvmOptions) {
        printf("RJniTest init starts...\n");
        JavaVMInitArgs vm_args; /* JDK/JRE 6 VM initialization arguments */
        JavaVMOption* poptions;
        int optionLen = 0;
        while (jvmOptions[optionLen]) {
            optionLen++;
        printf("RJniTest::init len=%d\n", optionLen);
        if (optionLen > 0) {
            printf("RJniWrapper::init jvmOptions\n");
            poptions = new JavaVMOption[optionLen];
            //poptions[0].optionString = "-Djava.class.path=/usr/lib/java";
            int idx = 0;
            while (jvmOptions[idx]) {
                poptions[idx].optionString = jvmOptions[idx];
                idx++;
        printf("RJniTest::init vm_args: version(%x), nOptions(%d)\n",
                JNI_VERSION_1_6, optionLen);
        vm_args.version = JNI_VERSION_1_6;
        vm_args.nOptions = optionLen;
        vm_args.options = poptions;
        vm_args.ignoreUnrecognized = JNI_FALSE;
        // load and initialize a Java VM, return a JNI interface
        // pointer in env
        printf("RJniTest::init creates JVM\n");
        JNI_CreateJavaVM(&g_pjvm, (void**)&g_penv, &vm_args);
        printf("RJniTest init ends\n");
    void findClass(const char* classname) {
        static const char* fname = "justFindClasses";
        printf("%s: findClass: %s\n", fname, classname);
        JNIEnv* jenv;
        jint ret = g_pjvm->GetEnv((void**)&jenv, JNI_VERSION_1_6);
        if (ret == JNI_EDETACHED) {
            ret = g_pjvm->AttachCurrentThread((void**)&jenv, NULL);
            if (ret != JNI_OK || jenv == NULL) {
                printf("%s: get env error: ret=%d\n", ret, fname);
            } else {
                printf("%s: got new env\n", fname);
        } else if (ret == JNI_OK) {
            printf("%s: env already there\n");
        jclass classref;
        classref = jenv->FindClass(classname);
        if (classref == NULL) {
            printf("%s: %s class not found!\n", fname, classname);
            if (jenv->ExceptionOccurred()) {
                jenv->ExceptionDescribe();
                jenv->ExceptionClear();
        printf("%s: found class: %s\n", fname, classname);
    class RJniTestThread : public TestThread {
    public:
        void threadmain();
    void RJniTestThread::threadmain() {
        printf("RJniTestThread::threadmain: Starting testing\n");
        findClass("org/apache/commons/logging/Log");
        findClass("java/util/List");
        printf("RJniTestThread::threadmain: done.\n");
    int main(int argc, char** argv) {
        char **jvmOptions = NULL;
        printf("RJniTestDriver starts...\n");
        if (argc > 1) {
            jvmOptions = new char*[argc];
            for (int i = 0; i < argc ; i ++) {
                jvmOptions[i] = argv[i + 1];
            jvmOptions[argc - 1] = NULL;
        } else {
            int size = 8;
            int i = 0;
            jvmOptions = new char*[size];
            jvmOptions[i++] = (char*) "-Djava.class.path=<list of jar files and path here>";
            jvmOptions[i++] = (char*) "-Djava.library.path=/sandbox/mxdev/3rdparty/java/unix/jdk1.6.0_14/jre/lib/sparc";
            jvmOptions[i++] = (char*) "-Djava.compiler=NONE";
            jvmOptions[i++] = (char*) "-verbose:jni";
            jvmOptions[i++] = (char*) "-Xcheck:jni";
            jvmOptions[i++] = NULL;
        printf("init JVM\n");
        initJVM(jvmOptions);
        // UNCOMMENT HERE
        // findClass("org/apache/commons/logging/Log");
        // findClass("java/util/List");
        // UNCOMMENT END
        printf("start test thread\n");
        RJniTestThread testThread;
        ThreadId tid = testThread.launch();
        printf("wait for test thread\n");
        int ret = pthread_join(tid, NULL);
        printf("RJniTestDriver ends\n");
    }

  • Seam on Weblogic 10.3.2: Possible classloader problem?

    Hi all,
    I have a problem deploying a Seam 2.2.0.GA application on WebLogic 10.3.2. I use JRockit 1.6.0_14, Richfaces 3.2.0.GA and Facelets 1.1.14 and the Server is deployed on Windoes XP 32bit. The application has the following structure:
    application.ear
    |--> APP-INF
    | |--> classes
    | |--> lib (all jar dependencies go here, including the WAR dependencies, EJB module dependencies)
    |-->META_INF
    | |--> application.xml
    | |--> data-sources.xml
    | |--> MANIFEST.MF
    | |--> weblogic.xml
    | |--> weblogic-application.xml
    |--> jboss-seam-2.2.0.GA.jar (is an EJB module)
    |--> myEjbModule1.jar
    |--> myEjbModule2.jar
    |--> myEjbModule3.jar
    |--> myEjbModule4.jar
    |--> myWar.war (NO libraries in WEB-INF/lib, finds everything in EAR/lib)
    JBoss Seam is an EJB module. and is declared as such in application.xml. Everything is OK, since the application loads correctly. The jar contains a faces.config registering the SeamPhaseListener on JSF, so that Seam actually works.
    Problems start when I try to enable the debug page of Seam. In order to do this, one must include in the classpath the jboss-seam-debug.jar (in APP-INF/lib or EAR/lib, here I am using the first). This jar has its own faces.config, which registers the Seam*Debug*PhaseListener on JSF, so that it catches debug requests.
    When deploying WITH jboss-seam-debug.jar, the application does not appear, but ONLY the debug page with the following exception (stacktrace at the end):
    Exception during request processing:
    Caused by java.lang.IllegalStateException with message: "No phase id bound to current thread (*make sure you do not have two SeamPhaseListener instances installed*)"
    This probably signifies a classloader issue. So, I have two questions:
    1. Has anyone deployed JBoss Seam on WenLogic WITH the debug page? If yes, is the structure of my project correct?
    2. Is there a way to debug the classloading of WebLogic? What I would find helpful would be to see what happens that registers the SeamPhaseListener more than one times.
    Note: When "JBoss-izing" the same EAR (remove hibernate jars, which are provided by JBoss, and move all libraries from EAR/lib to EAR root), the application loads correctly. BOTH the application AND the debug page appear correctly.
    Edited by: user6410241 on Mar 24, 2010 8:14 AM
    Edited by: user6410241 on Mar 24, 2010 8:26 AM

    The problem was the name of the Seam EJB module. Changing the jar to jboss-seam.jar, everything worked. This issue does not appear on JBoss 4.2.3.GA, where I also tested.
    Edited by: deadlock_gr on Jun 10, 2010 9:55 AM
    Edited by: deadlock_gr on Jun 10, 2010 9:56 AM

  • Have this problem over a month now

    Afternoon everyone,
    Where should I start..
    About a month ago my hub started resetting itself whenever I used internet, i spoke to numerous amount of people over at the call centre and about 2 weeks after calling them nearly every day they sent openreach engineer over to my house to check whats going on. He did what he had to do inside my house and outside my house, then he did some tests which all said "passed", but hey after the visit i went straight on my computer and checked the speeds which were at about 1mb at the time which still are not good enough considering i had 6-8mb about 3 months ago, anyway back on the subject i contacted bt yet again and they said the line needs to be running few days for the connection to stabilise. A week of waiting and still nonthing speeds the same and my hub was still resetting itself but not as often as it used to. After a week I decided im not going to bother with those useless people in the call centre so I emailed bt and started to explain my problem all over again, first they sent an engineer to my exchange to see whats going on there, still nothing improved after that. They then decided that they should send an engineer again which came to my house yesterday and replaced the master socket and also did other things which i didnt see. He then like the first engineer did some tests and he said that the speed hes getting from the master socket is 9.7mb i was all excited that i finally got back speeds i used to have about 3months ago but hey, went on the computer straight away after the visit and the speeds were at 500kb/s. I had an idea today that maybe i should bring my computer downstairs with the hub and connect it to the master socket but still nothing.. same speeds and the hub is still resetting from time to time, if i counted correctly the hub resetted 7 times today and 4/7 of them resets the hub didnt connect to the broadband for about an hour and on one reset it didnt connect for 4 hours the rest connected in about a minute. This is really going beyond a joke now, really unuhappy with the whole situation which i repeat had for over a MONTH now. Im thinking of changing to another ISP and as bt said if i change from bt to any isp the problem will still remain id prefer to talk to normal people and not the callcentre which as a matter of fact everybody knows is useless and you can barely understand what they are trying to say due to obvious reasons.
                                             TEST
    Quite line is fine not much noise even though im using a cordless phone.
    Connection information
    Line state
    Connected
    Connection time
    0 days, 0:57:48
    Downstream
    1,151 Kbps
    Upstream
    708 Kbps
    ADSL settings
    VPI/VCI
    0/38
    Type
    PPPoA
    Modulation
    ITU-T G.992.5
    Latency type
    Interleaved
    Noise margin (Down/Up)
    25.0 dB / 8.8 dB
    Line attenuation (Down/Up)
    42.5 dB / 21.8 dB
    Output power (Down/Up)
    20.1 dBm / 12.4 dBm
    FAQ
    Test1 comprises of two tests
    1. Best Effort Test:  -provides background information.
    Download Speed
    622 Kbps
    0 Kbps
    1000 Kbps
    Max Achievable Speed
     Download speedachieved during the test was - 622 Kbps
     For your connection, the acceptable range of speedsis 400-1000 Kbps.
     Additional Information:
     Your DSL Connection Rate :1148 Kbps(DOWN-STREAM), 708 Kbps(UP-STREAM)
     IP Profile for your line is - 750 Kbps
    The throughput of Best Efforts (BE) classes achieved during the test is - 11.79:25.54:62.8 (SBE:NBEBE)
    These figures represent the ratio while sententiously passing Sub BE, Normal BE and Priority BE marked traffic.
    The results of this test will vary depending on the way your ISP has decided to use these traffic classes.
    2. Upstream Test:  -provides background information.
    Upload Speed
    572 Kbps
    0 Kbps
    708 Kbps
    Max Achievable Speed
    >Upload speed achieved during the test was - 572 Kbps
     Additional Information:
     Upstream Rate IP profile on your line is - 708 Kbps
    We were unable to identify any performance problem with your service at this time.
    It is possible that any problem you are currently, or had previously experienced may have been caused by traffic congestion on the Internet or by the server you were accessing responding slowly.
    If you continue to encounter a problem with a specific server, please contact the administrator of that server in the first instance.
    Please visit FAQ section if you are unable To understand the test results.
    http://www.speedtest.net/result/1221794792.png
    Thank you to anyone who will bother to read my rant, but hopefully im going to get my message across now....

    rest of the stats : 
    ADSL settings
    VPI/VCI
    0/38
    Type
    PPPoA
    Modulation
    ITU-T G.992.5
    Latency type
    Interleaved
    Noise margin (Down/Up)
    21.9 dB / 8.3 dB
    Line attenuation (Down/Up)
    42.5 dB / 21.8 dB
    Output power (Down/Up)
    20.1 dBm / 12.4 dBm
    Loss of Framing (Local)
    0
    Loss of Signal (Local)
    0
    Loss of Power (Local)
    0
    FEC Errors (Down/Up)
    11189 / 22
    CRC Errors (Down/Up)
    8 / 2147480000
    HEC Errors (Down/Up)
    nil / 878043
    Error Seconds (Local)
    5

  • My MacBook Air keyboard isn't working, except the power button. I had the same problem over the summer and had it repaired ~4 months ago. What should I do?

    The keyboard of my 11-inch MacBook Air, purchased in November 2011, isn't working at all. None of the keys respond except the power button. I'm able to restart the computer, and have done so multiple times. I've attempted SMC and PRAM resets, but they haven't worked.
    I've never spilled anything on the laptop, haven't stepped on it, and haven't otherwise damaged it ever. I use the laptop very lightly. I only use it to take notes for class, browse the Internet, and watch movies. I don't download anything but PDFs, PowerPoints, images, and Word documents. I don't even have music on it. So I don't think I had any part in creating the problem.
    I had this same problem with my laptop over the summer, and I took it into the Apple Store to get it repaired for $200. They told me that they didn't know the cause of the problem. I think they replaced the bottom half of my laptop entirely (receipt says there's a new "Housing, Top Case with Keyboard, US") and told me the problem was fixed. This was on June 30. The laptop keyboard stopped working again today, October 19. I called Apple Support and they told me that I would have to pay for the repair again because it's been 90 days since the last repair. I'm annoyed and upset that I have to pay $200 again to re-repair a problem that should've been properly fixed the first time. Plus, if the problem keeps happening despite multiple repairs, I can't afford to keep getting the laptop repaired over and over again due to the Apple employees' incompetence.
    Does anyone have any advice on how to fix the laptop? I'm a grad student and don't have the funds to pay for another repair, and there's no way for me to get to an Apple Store without hiring a car service, so I'm trying to avoid going to the store if possible. Thank you.

    Get the new keyboard at eBay and replace by yourself may be cheaper way, though you're required higher skill and well know about MacBook Air.
    http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR0.TRC0.H0 .Xmacbook+air+2011+keyboard&_nkw=macbook+air+2011+keyboard&_sacat=0
    https://www.youtube.com/watch?v=gLbasVD69xo

  • Problem - over lie of data series in Line chart (Web Application Designer)

    Dear Experts,
    I have created a chart with below requiments from my user by using web application designer.
    1) Key Figure 1 (Chart type -> column )
    2) Key Figure 2 (Chart type -> column )
    3) Key Figure 3 (Chart type -> Line; color assigned -> BLACK;    Visibility: Visible)
    4) Key Figure 4 (Chart type -> Line; color assigned -> YELLOW; Visibility: Visible/Hidden)
    5) Key Figure 5 (Chart type -> Line; color assigned -> RED;         Visibility: Visible/Hidden)
    The line chart of Key Figure 3 must always appear in Front then others Key Figures.
    Then following by, Key Figure 4. Last is Key Figure 5.
    As I know the order of display line chart is infflucing by the order of Key Figure in structure by descending, likes below
    1) Key Figure 3 (Rank of front -> 3rd; Chart type -> Line; color assigned -> BLACK;    Visibility: Visible)
    2) Key Figure 4 (Rank of front -> 2nd; Chart type -> Line; color assigned -> YELLOW; Visibility: Visible/Hidden)
    3) Key Figure 5 (Rank of front -> 1st; Chart type -> Line; color assigned -> RED;         Visibility: Visible/Hidden)
    So, I have conflict on fulfilling these 2 request on assigning the color and control their visibility and lines over lie.
    Please advice me if you have any suggestion on controlling the lines order.
    Thanks!
    ~ GP
    Edited by: GP Poh on Jun 9, 2010 12:32 PM

    Hi Priya, thanks for input.
    I think I should further elaborate the problems. Thanks for your highlight.
    I have a lines chart with five key figures. So my chart will have five lines.
    Some lines from chart will overlap if the data are same.
    When overlapping of lines happens, I want to control the order of which series should be appear first.
    Likes below example,
    1) Key Figure 1 (Chart type -> column )
    2) Key Figure 2 (Chart type -> column )
    3) Key Figure 3 (Chart type -> Line; color assigned -> BLACK; Visibility: Visible)
    4) Key Figure 4 (Chart type -> Line; color assigned -> YELLOW; Visibility: Visible/Hidden)
    5) Key Figure 5 (Chart type -> Line; color assigned -> RED; Visibility: Visible/Hidden)
               KF1  KF2  KF3  KF4  KF5
    CW 1    30     30    80    80    50
    CW 2    40     50    90    60    90
    CW 3    70     50    90    90    90
    CW 4    80     70    70    90    70
    As you can see, there is overlap in these value.
    CW 1 KF3, KF4  -->80
    CW 2 KF3, KF5 --> 90
    CW 3 KF3, KF4, KF5 --> 90
    The order which i want the series should appear first when overlapping.
    - KF3 must appear on top.
    - Then, follow by KF5
    - Last is KF4.
    So now, i have no idea to control the overlap orders except adjusting the sequence of keyfigure from query.
    Feel free to give me any input!

Maybe you are looking for

  • Adobe Creative Cloud app doesn't run

    Just tried to use my newly Adobe Creative Cloud app today after signing up for an Adobe creative cloud account. I have Mavrick Version 10.9.3 and I cannot run the application Adobe creative cloud app. Every time I run the program it starts to load an

  • How to use a lexical variable in a WHERE clause and as a function argument.

    Hello, My report has a lexical variable which has values like 'and id in (1,3,4)'. I want to use this variable in two separate queries. In the first, it is used in the WHERE clause, something like: .. where date is not null &var; In the second query,

  • IPad and iPhone not working with a monitor

    I tried to get my iPad and iPhone to play Netflix on a Acer 20inch monitor.  It started to work than stopped. I got a message that the display connected display is not sponsored. It there a download that is available to have my monitor display video.

  • Can't download music to iPhone

    I'm unable to download music on to my iPhone. I got it back in December and had it hooked up to a different computer. I ended up getting rid of that one so I'm trying to hook it up to a new computer. Went okay. I have previously had an older ipod set

  • Error sending receipt acknowledgement for 3B2

    Hi, Does anyone know what the following error message mean? Or where to look to resolve this? Thanks! Sirisak Machine Info: (ftilnxtstweb2.forsythe.com) Description: Unable to create the protocol specific B2B message StackTrace: Error -: AIP-51503: G