Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

JMS applet failed to run in browser

11 views
Skip to first unread message

Miki

unread,
Apr 13, 2001, 3:39:02 AM4/13/01
to

Hi

I'm trying to run the JMS applet within a browser both IE or Netscape. The applet
can run using appletviewer but when I tried on the browser it gives me different
error for different browser used.

In Netscape 4.75 it gives me this error
# Verifier error weblogic/kernel/Kernel.ensureInitialized()V: Cannot find class
weblogic/management/configuration/KernelMBean
java.lang.NoClassDefFoundError: weblogic/kernel/Kernel

at java.lang.ClassLoader.resolveClass(Compiled Code)

at java.lang.ClassLoader.loadClassInternal(Compiled Code)

at weblogic.jndi.WLInitialContextFactoryDelegate.<init>(Compiled Code)

at weblogic.jndi.WLInitialContextFactory.getInitialContext(Compiled Code)

at javax.naming.spi.NamingManager.getInitialContext(Compiled Code)

at javax.naming.InitialContext.getDefaultInitCtx(Compiled Code)

at javax.naming.InitialContext.init(Compiled Code)

at javax.naming.InitialContext.<init>(Compiled Code)

at com.electricangels.trekeasy.JMS.JMSQueueConnector.getInitialContext(Compiled
Code)

at com.electricangels.trekeasy.JMS.JMSQueueConnector.<init>(Compiled Code)

at com.electricangels.trekeasy.JMS.JMSQueueReceiver.<init>(Compiled Code)

at com.electricangels.trekeasy.client.ClientBrowser.init(Compiled Code)

* at netscape.applet.DerivedAppletFrame$InitAppletEvent.dispatch(Compiled Code)

at java.awt.EventDispatchThread$EventPump.dispatchEvents(Compiled Code)

at java.awt.EventDispatchThread.run(Compiled Code)

at netscape.applet.DerivedAppletFrame$AppletEventDispatchThread.run(Compiled
Code)


While in IE5 it gives me this error

com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11.getJndiProperty]:
Unable to access system property: java.naming.factory.object
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at com/sun/naming/internal/VersionHelper11.getJndiProperty
at com/sun/naming/internal/ResourceManager.getInitialEnvironment
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11.getJndiProperty]:
Unable to access system property: java.naming.factory.url.pkgs
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at com/sun/naming/internal/VersionHelper11.getJndiProperty
at com/sun/naming/internal/ResourceManager.getInitialEnvironment
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11.getJndiProperty]:
Unable to access system property: java.naming.factory.state
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at com/sun/naming/internal/VersionHelper11.getJndiProperty
at com/sun/naming/internal/ResourceManager.getInitialEnvironment
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11.getJndiProperty]:
Unable to access system property: java.naming.dns.url
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at com/sun/naming/internal/VersionHelper11.getJndiProperty
at com/sun/naming/internal/ResourceManager.getInitialEnvironment
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11.getJndiProperty]:
Unable to access system property: java.naming.factory.control
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at com/sun/naming/internal/VersionHelper11.getJndiProperty
at com/sun/naming/internal/ResourceManager.getInitialEnvironment
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11.getJavaHomeLibStream]:
Unable to access system property: java.home
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at com/sun/naming/internal/VersionHelper11.getJavaHomeLibStream
at com/sun/naming/internal/ResourceManager.getApplicationResources
at com/sun/naming/internal/ResourceManager.getInitialEnvironment
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
com.ms.security.SecurityExceptionEx[weblogic/kernel/Kernel.initDebug]: Unable
to access system property: weblogic.kernel.debug
at com/ms/security/permissions/PropertyPermission.check
at com/ms/security/PolicyEngine.shallowCheck
at com/ms/security/PolicyEngine.checkCallersPermission
at com/ms/security/StandardSecurityManager.chk
at com/ms/security/StandardSecurityManager.checkPropertyAccess
at java/lang/System.getProperty
at weblogic/kernel/Kernel.initDebug
at weblogic/kernel/Kernel.<clinit>
at weblogic/kernel/Kernel.ensureInitialized
at weblogic/jndi/WLInitialContextFactoryDelegate.<init>
at java/lang/Class.newInstance
at weblogic/jndi/WLInitialContextFactory.getInitialContext
at javax/naming/spi/NamingManager.getInitialContext
at javax/naming/InitialContext.getDefaultInitCtx
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
Error loading class: javax.management.DynamicMBean
java.lang.NoClassDefFoundError
java.lang.Error: java.lang.ClassNotFoundException: javax.management.DynamicMBean
at weblogic/jndi/WLInitialContextFactory.getInitialContext
at javax/naming/spi/NamingManager.getInitialContext
at javax/naming/InitialContext.getDefaultInitCtx
at javax/naming/InitialContext.init
at javax/naming/InitialContext.<init>
at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
at com/electricangels/trekeasy/client/ClientBrowser.init
at com/ms/applet/AppletPanel.securedCall0
at com/ms/applet/AppletPanel.securedCall
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run

Please help !!!!

Stephen Felts

unread,
Apr 13, 2001, 7:59:46 AM4/13/01
to
It looks to me like you are trying to use the java that comes with the
browser.
You should be using the JavaSoft plugin to run your applets.
See news://newsgroups.bea.com/3ad3...@newsgroups.bea.com for instructions
and a simple working example that works with both IE and Netscape.


"Miki" <mi...@electricangels.com> wrote in message
news:3ad69f06$1...@newsgroups.bea.com...

Miki

unread,
Apr 14, 2001, 2:08:37 AM4/14/01
to

Hi Stephen,

I've already follow the step on that article but still the same error coming out.
I try to run the example given I can't see the applet running. It this something
to do with my Weblogic server configuration problem. Please advice.. Thanks.

Falk Lademann

unread,
Apr 14, 2001, 12:44:44 PM4/14/01
to
Miki,

did you deploy weblogic.servlet.ClasspathServlet
and put /classes (or whatever it is registered to)
to the codebase of your applet?

Falk.

pete meehan

unread,
Apr 16, 2001, 8:28:47 AM4/16/01
to

We have all the necessary jar files needed by client specified in the HTML file
and are being downloaded to the applet. This has been verified by looking at the
web server logs.

We are somewhat confused by your advice on using a servlet classpath as we are
not attempting to deploy servlets with this solution. Would you kindly tell us
what is in your servlet classpath?

Thanks

Stephen Felts

unread,
Apr 16, 2001, 8:07:42 AM4/16/01
to
The problem is not in your configuration.
The problem is in your .htm file.

You currently have something like
<APPLET
WIDTH = 600
HEIGHT = 350
CODE="Applet1.class"
CODEBASE="."
ARCHIVE= "weblogic.jar">
</APPLET>
instead of defining the Java plugin. I reproduced both of your stack traces
by not
using the plugin.

The
netscape.applet.DerivedAppletFrame$InitAppletEvent.dispatch(Compiled
indicates Netscape is trying to load your applet. Problem is that Netscape
is running 1.1.X in the browser which won't work for a jar with 1.2 or 1.3
classes.
All of those >> at com/ms/security/ lines - Microsoft trying to load your
applet.

You need to follow the setup in the a.htm file in the news article.

A class not found with the plugin looks something like this:
ava.lang.NoClassDefFoundError: javax/jms/MessageListener
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at sun.plugin.security.PluginClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"Miki" <mi...@electricangels.com> wrote in message

news:3ad7db55$1...@newsgroups.bea.com...

Bob Gontarz

unread,
Apr 16, 2001, 3:34:20 PM4/16/01
to

Hello Steve,

Evidently, many folks are interested in developing JMS-enabled applets. Do
you know of a URL where a JMS-enabled applet can be demonstrated
..hopefully served from a WebLogic server?

If not, I can supply you with one :-)

I've developed a JMS chat system with a client applet for the
customer and a JMS application for a service representative's
desktop.

We tested this out at a recent trade show where the only open port
was the standard http port 80. It worked great using WL 6 and
the Netscape proxy plugin with tunneling enabled to get through
the trade show firewall.

There are some BEA "issues" involved in getting this to work...
see BEA Support Case No. 217786. I think your ClassPathServlet
is suspect in the overall scheme of producing a JMS applet.

Also, because of these issues, I had to look at another JMS
provider... Fiorano, in my case. I did the WL6/Fiorano integration
with a good degree of success. Got the WebLogic MessageTraderBean
to receive Fiorano TextMessages sent from a different machine.

Because many JMS developers have reached different levels of
success here, I would be happy to entertain "specific" questions
pertaining to our JMS implementation.

Cheers,

Bob

>..


>> >getJndiProperty]:
>> >> Unable to access system property: java.naming.factory.object
>> >> at com/ms/security/permissions/PropertyPermission.check
>> >> at com/ms/security/PolicyEngine.shallowCheck
>> >> at com/ms/security/PolicyEngine.checkCallersPermission
>> >> at com/ms/security/StandardSecurityManager.chk
>> >> at com/ms/security/StandardSecurityManager.checkPropertyAccess
>> >> at java/lang/System.getProperty
>> >> at com/sun/naming/internal/VersionHelper11.getJndiProperty
>> >> at com/sun/naming/internal/ResourceManager.getInitialEnvironment
>> >> at javax/naming/InitialContext.init
>> >> at javax/naming/InitialContext.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
>> >> at com/electricangels/trekeasy/client/ClientBrowser.init
>> >> at com/ms/applet/AppletPanel.securedCall0
>> >> at com/ms/applet/AppletPanel.securedCall
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.run
>> >> at java/lang/Thread.run
>> >>
>>
>>com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11

>..


>> >getJndiProperty]:
>> >> Unable to access system property: java.naming.factory.url.pkgs
>> >> at com/ms/security/permissions/PropertyPermission.check
>> >> at com/ms/security/PolicyEngine.shallowCheck
>> >> at com/ms/security/PolicyEngine.checkCallersPermission
>> >> at com/ms/security/StandardSecurityManager.chk
>> >> at com/ms/security/StandardSecurityManager.checkPropertyAccess
>> >> at java/lang/System.getProperty
>> >> at com/sun/naming/internal/VersionHelper11.getJndiProperty
>> >> at com/sun/naming/internal/ResourceManager.getInitialEnvironment
>> >> at javax/naming/InitialContext.init
>> >> at javax/naming/InitialContext.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
>> >> at com/electricangels/trekeasy/client/ClientBrowser.init
>> >> at com/ms/applet/AppletPanel.securedCall0
>> >> at com/ms/applet/AppletPanel.securedCall
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.run
>> >> at java/lang/Thread.run
>> >>
>>
>>com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11

>..


>> >getJndiProperty]:
>> >> Unable to access system property: java.naming.factory.state
>> >> at com/ms/security/permissions/PropertyPermission.check
>> >> at com/ms/security/PolicyEngine.shallowCheck
>> >> at com/ms/security/PolicyEngine.checkCallersPermission
>> >> at com/ms/security/StandardSecurityManager.chk
>> >> at com/ms/security/StandardSecurityManager.checkPropertyAccess
>> >> at java/lang/System.getProperty
>> >> at com/sun/naming/internal/VersionHelper11.getJndiProperty
>> >> at com/sun/naming/internal/ResourceManager.getInitialEnvironment
>> >> at javax/naming/InitialContext.init
>> >> at javax/naming/InitialContext.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
>> >> at com/electricangels/trekeasy/client/ClientBrowser.init
>> >> at com/ms/applet/AppletPanel.securedCall0
>> >> at com/ms/applet/AppletPanel.securedCall
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.run
>> >> at java/lang/Thread.run
>> >>
>>
>>com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11

>..


>> >getJndiProperty]:
>> >> Unable to access system property: java.naming.dns.url
>> >> at com/ms/security/permissions/PropertyPermission.check
>> >> at com/ms/security/PolicyEngine.shallowCheck
>> >> at com/ms/security/PolicyEngine.checkCallersPermission
>> >> at com/ms/security/StandardSecurityManager.chk
>> >> at com/ms/security/StandardSecurityManager.checkPropertyAccess
>> >> at java/lang/System.getProperty
>> >> at com/sun/naming/internal/VersionHelper11.getJndiProperty
>> >> at com/sun/naming/internal/ResourceManager.getInitialEnvironment
>> >> at javax/naming/InitialContext.init
>> >> at javax/naming/InitialContext.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
>> >> at com/electricangels/trekeasy/client/ClientBrowser.init
>> >> at com/ms/applet/AppletPanel.securedCall0
>> >> at com/ms/applet/AppletPanel.securedCall
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.run
>> >> at java/lang/Thread.run
>> >>
>>
>>com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11

>..


>> >getJndiProperty]:
>> >> Unable to access system property: java.naming.factory.control
>> >> at com/ms/security/permissions/PropertyPermission.check
>> >> at com/ms/security/PolicyEngine.shallowCheck
>> >> at com/ms/security/PolicyEngine.checkCallersPermission
>> >> at com/ms/security/StandardSecurityManager.chk
>> >> at com/ms/security/StandardSecurityManager.checkPropertyAccess
>> >> at java/lang/System.getProperty
>> >> at com/sun/naming/internal/VersionHelper11.getJndiProperty
>> >> at com/sun/naming/internal/ResourceManager.getInitialEnvironment
>> >> at javax/naming/InitialContext.init
>> >> at javax/naming/InitialContext.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.getInitialContext
>> >> at com/electricangels/trekeasy/JMS/JMSQueueConnector.<init>
>> >> at com/electricangels/trekeasy/JMS/JMSQueueReceiver.<init>
>> >> at com/electricangels/trekeasy/client/ClientBrowser.init
>> >> at com/ms/applet/AppletPanel.securedCall0
>> >> at com/ms/applet/AppletPanel.securedCall
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.processSentEvent
>> >> at com/ms/applet/AppletPanel.run
>> >> at java/lang/Thread.run
>> >>
>>
>>com.ms.security.SecurityExceptionEx[com/sun/naming/internal/VersionHelper11

>..

Steve Felts

unread,
Apr 16, 2001, 4:48:04 PM4/16/01
to
There is a working example (for both IE and Netscape) at
news://newsgroups.bea.com/3ad3...@newsgroups.bea.com .
It's pretty simply (sends messages, asynchronously receives messages
and appends them to the window). I was able to run it using
port 80 and I also tried http tunneling (which is not a big deal
as long as you remember to configure it to true).

However, feel free to post another example that is more interesting.
I would also be interested in a list of problems you ran into and
solutions (short of using another vendor's product, if possible) -
I will be adding some information to the JMS 6.0 FAQ about running
applets and want to make it as complete as possible.

I used the JavaSoft plug-in for both Netscape and IE.
I did not use the ClassPathServlet (everything was in the Document Root
for the WLS webserver), so I would be interesting in hearing your experiences
with it.


"Bob Gontarz" <rg...@sonlite.org> wrote in message news:3adb3b2c$1...@newsgroups.bea.com...

Bob Gontarz

unread,
Apr 17, 2001, 5:00:22 PM4/17/01
to

Hi Steve,

Just looking at numerous posts on this newsgroup from JMS applet
developers, the general complaint seems to center around
classpath and security issues.


My JMS applet works in a browser under the following conditions:

1. My applet .jar file - jmschat.jar - is placed in the directory
g:\BEA_HOME\wlserver6.0\config\examples\serverclasses

2. I make a security policy addition on the client machine to
grant
ALL PERMISSION to any codebase.


With item 1, even though this directory is not my document root
directory, using the codebase "/classes/" in my html applet
definition (per WL6 documentation) requires my applet jar file
to be in the folder designated above.

When my html page specifying the applet is served from the actual
document root, the applet jar file and other WebLogic JMS classes
appear to be served from the serverclasses folder which is
outside of the document root path. This results in the common
marshaling exception many developers are wrestling with.

Adding the security permission on the client machine corrects the
marshaling exception.

You can examine my JMS chat applet with a Java console and also
check out the associated html page to see what I've done. I'm
hoping you can spot an obvious flaw which will make every work
fine. Here's the URL:

http://predict.datatel-info.com/weblogic/examplesWebApp/jmsChat.html
(click on the telephone button to chat :-)

Even though the applet works, my immediate concern is the
security permission modification of the client machine. We
obviously can't live with that.

Looking forward to hearing your comments, Steve.

Bob

Steve Felts

unread,
Apr 17, 2001, 11:54:05 PM4/17/01
to
First, I can't even open http://predict.datatel-info.com or the page that you
listed below. I tried with both Netscape 3.X, 4.X and IE 5.5 - it starts to come up and
then closes the browser. Never seen anything like it.
I'm not sure what you are proposing to see the .html or .java files - maybe just attach
them to a post to this newsgroup.

Second, setting ALL PERMISSION is an unecessarily wide security hole.
All that you need is
permission java.io.SerializablePermission "enableSubstitution";
permission java.lang.RuntimePermission "setContextClassLoader";
as described in my post.

Finally, I believe that if you sign the jar files that are used, you may be
able to get around the security settings. I am still trying to get a
valid set-up that I can use to sign a jar.

"Bob Gontarz" <rg...@sonlite.org> wrote in message news:3adc...@newsgroups.bea.com...

Stephen Felts

unread,
Apr 18, 2001, 8:26:59 AM4/18/01
to
Well, from work, I can open the page and the applet - not sure what is going
on at home
(don't have problems with any other web pages). Also I can see the HTML
page source
and the jar file.
I also see that you unjar'ed all of the class files so that weblogic.jar
doesn't need to
come down in its entirety - I see a long list of class files in the IE
cache.


"Steve Felts" <St...@spam.com> wrote in message
news:3add...@newsgroups.bea.com...

Bob Gontarz

unread,
Apr 18, 2001, 2:50:01 PM4/18/01
to

Hi Steve,

Thanks for running my JMS Chat applet. I had already left the
office when you logged in ~ 5:30 PST. I'm in Mesa Arizona which
is the same time as you.

I got in this morning to find that I did pick you up on our "radar
screen". You sent two strings - "test" and "testing".
I'll be in the office today until 5:00 if you'd like to try it
again.

I did replace the AllPermission with the two permissions you
listed below. When I fired up my applet on IE 5.5, my Java console
showed the following exception:

Exception occurred during event dispatching:

java.lang.ExceptionInInitializerError: java.security.AccessControlException: access
denied (java.util.PropertyPermission * read,write)

at java.security.AccessControlContext.checkPermission(Unknown Source)

at java.security.AccessController.checkPermission(Unknown Source)

at java.lang.SecurityManager.checkPermission(Unknown Source)

at java.lang.SecurityManager.checkPropertiesAccess(Unknown Source)

at java.lang.System.getProperties(Unknown Source)

at weblogic.net.http.Handler.init(Handler.java:43)

at weblogic.rjvm.http.HTTPClientJVMConnection.<clinit>(HTTPClientJVMConnection.java:35)

at weblogic.rjvm.Protocol.createConnection(Protocol.java:207)

at weblogic.rjvm.ConnectionManager.findOrCreateConnection(ConnectionManager.java:1077)

at weblogic.rjvm.ConnectionManager.bootstrap(ConnectionManager.java:365)


I traced this exception to my "Context ctx = new InitialContext(env);" statement.
All
I'm setting here is the INITIAL_CONTEXT_FACTORY and the PROVIDER_URL.

I'm still not clear as to why the client needs to set any permission.
As far as I see, my applet is served from a codebase which is
beneath a document root. I'm assuming that your ClassPathServlet
serves all required WebLogic classes to the client applet as
though these Weblogic classes resided in the same codebase as
the applet classes.

If you (or anyone else :) have a chance to try this applet, I'm
usually in the office (developing hardcore Java stuff) between
10a and 5p on Mon, Web, and Fri. Love to chat with ya'!

Bob

PS. All those classes being downloaded in your IE cache... would
they be WebLogic classes? Pretty heavy footprint, yes?

0 new messages