Bug 476397

Summary: JRE don't work in Seamonkey
Product: [openSUSE] openSUSE 11.0 Reporter: Forgotten User B-7XM5iatA <forgotten_B-7XM5iatA>
Component: JavaAssignee: E-mail List <bnc-team-java>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P4 - Low CC: wolfgang
Version: Final   
Target Milestone: Future/Later   
Hardware: x86   
OS: openSUSE 11.0   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: libnpjp2.so
libjavaplugin_oji.so

Description Forgotten User B-7XM5iatA 2009-02-17 11:03:42 UTC
Created attachment 273219 [details]
libnpjp2.so

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; de-AT; rv:1.8.1.19) Gecko/20081213 SUSE/1.1.14-3.1 SeaMonkey/1.1.14

Seamonkey 1.1.14
java-1_6_0-sun-1.6.0u12-1.2
java-1_6_0-sun-plugin-1.6.0u12-1.2
is successful installed on my system via YaST.
But Seamonkey don't shows websites with java-applications correctly.
I get the error message necesary plugin not present.

If I take a look in Seamonkey "about:plugins"

Seamonkey shows: (to see attachment) "libnpjp2.so.png"

If I make a symbolic link
from: /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin.oji.so
to: /usr/lib/seamonkey/plugins/libjavaplugin.oji.so

Seamonky shows in "about:plugins" additional "libjavaplugin_oji.so.png"

and java applications in websites are working now.

I never made bevore such a symbolic link to use the java-plugin.
Is something wrong with seamonkey ?

Exactly the same Problem on my second computer with opensuse 11.1

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Comment 1 Forgotten User B-7XM5iatA 2009-02-17 11:04:55 UTC
Created attachment 273220 [details]
libjavaplugin_oji.so
Comment 2 Marcus Meissner 2009-02-17 15:10:12 UTC
not sure if the new java plugin is compatible with these seamonkeys
Comment 3 Wolfgang Rosenauer 2009-02-17 15:18:28 UTC
That new java plugin doesn't work with Gecko before 1.9 so not in SeaMonkey 1.x
Comment 4 Michal Vyskocil 2009-02-18 09:22:16 UTC
Wolfgang is right. But the old java plugin is already distributed on %ix86, so I added

/usr/sbin/update-alternatives --install /usr/lib/seamonkey/plugins/javaplugin.so javaplugin_old /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so 1600

to %post install script of java-1_6_0-sun-plugin.

Fix was submitted to Factory. On released product the fix will be available with a next update of SUN Java.

BTW: Unfortunatelly the avaiblable x86_64 plugin cannot be used with current version of Seamonkey. So if you need to use Sun's x86_64 plugin, you have to use a Firefox 3.
Comment 5 Michal Vyskocil 2009-02-18 09:35:31 UTC
It seems that a new Java plugin is not compatible with Opera too. Pavol, how could be this fixed for Opera? I read the Knowledge Base [1], but it seems [2] that this must be tweaked in Opera package.

But still I don't know how to setup Opera to use an old plugin. Seamonkey has it own plugins dir, but Opera not (afaik)

[1] http://www.opera.com/support/kb/plug-ins/page1/
[2] http://www.opera.com/support/kb/view/610/
Comment 6 Pavol Rusnak 2009-02-18 15:34:20 UTC
Opera uses these directories for plugins:

/usr/lib64/browser-plugins:/usr/lib/browser-plugins:/usr/lib/opera/plugins

What should I do to test?
Comment 7 Michal Vyskocil 2009-02-19 06:44:45 UTC
So Opera and the legacy plugin is not compatible (to be clear, I'm talking about 32bit systems, on 64bits is only a new plugin available).

The appropiate part of opera -debugplugin output:
# the libnpjp2.so is a new plugin
operapluginwrapper: [plugin probing] /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/lib/i386/libnpjp2.so
operapluginwrapper: [plugin probing] MIMEDescription             : present
operapluginwrapper: [plugin probing] NPPVpluginNameString        : not present
operapluginwrapper: [plugin probing] NPPVpluginDescriptionString : not present
operapluginwrapper: [plugin probing] dlclose returned : 0
operapluginwrapper: [plugin probing] Return value : 0 File : /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/lib/i386/libnpjp2.so
opera: plugin detection successful: /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/lib/i386/libnpjp2.so

# and libjavaplugin_oji.so is an old one
operapluginwrapper: [plugin failed ] dlopen(RTLD_NOW | RTLD_GLOBAL) failed on /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so
operapluginwrapper: [plugin failed ] With error /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so: undefined symbol: PR_GetCurrentThread
operapluginwrapper: [plugin failed ] Retrying with dlopen(RTLD_LAZY | RTLD_GLOBAL)

operapluginwrapper: [plugin probing] /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so
operapluginwrapper: [plugin failure] No NPP_GetMIMEDescription
operapluginwrapper: [plugin failure] No NPP_GetValue
operapluginwrapper: [plugin probing] dlclose returned : 0
operapluginwrapper: [plugin probing] Return value : 1 File : /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so
Comment 8 Michal Vyskocil 2009-02-19 06:50:17 UTC
So state is current:

I added those two lines in %post install script to java-1_6_0-plugin

/usr/sbin/update-alternatives --install \
 /usr/lib/seamonkey/plugins/libjavaplugin_oji.so javaplugin_old \
 /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so 1600

/usr/sbin/update-alternatives --install \
 /usr/lib/opera/plugins/libjavaplugin_oji.so javaplugin_old \
 /usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/plugin/i386/ns7/libjavaplugin_oji.so 1600

It's not possible to do a link in browser-plugins, because Seamonkey selects the new one as a default and not work. For Opera browser should be necessary add 

[Plugins to Ignore]
javaplugin.so = Opera is not compatible with NPAPI plugins

to /usr/share/opera/ini/plugin-ignore.ini, but it cannot be checked as a legacy plugin don't work in Opera.

Pavol: do you want to create a new bug against Sun u12 plugin and Opera?
Comment 9 Pavol Rusnak 2009-02-19 12:33:02 UTC
Michal: yes please and also describe all steps I should do in opera package.
Comment 10 Michal Vyskocil 2009-02-20 08:03:40 UTC
New Java plugin: bug#477992
Legacy Java plugin: bug#477993
Comment 11 Michal Vyskocil 2009-03-26 15:29:13 UTC
Submitted fixed packages for openSUSE 11.0 and 11.1 - see bug#488926.