Bug 172149

Summary: [gcj] Can't create beanshell/rhino macros
Product: [Fedora] Fedora Reporter: Anthony Green <green>
Component: openoffice.orgAssignee: Caolan McNamara <caolanm>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-12-01 08:52:54 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 172362    
Bug Blocks:    
Attachments:
Description Flags
jvmfwk3rc file after modification
none
Output log
none
replacement ScriptFramework.jar none

Description Anthony Green 2005-10-31 20:52:50 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050909 Fedora/1.0.6-1.2.fc4 Firefox/1.0.6

Description of problem:
I'm getting "The object could not be created." dialogs when I try to create BeanShell or JavaScript macros via "Organize Macros".


Version-Release number of selected component (if applicable):
openoffice.org-core-2.0.0-3.2.1

How reproducible:
Always

Steps to Reproduce:
1.Go to Tools->Macros->Organize Macros->BeanShell (or JavaScript)
2.Click on Create
3.Client on OK to create a library (Library1)

  

Actual Results:  A dialog box pops up saying "The object could not be created.".


Additional info:

Comment 1 Caolan McNamara 2005-11-01 13:09:56 UTC
rats...

add 

file:///usr/share/java/xerces-j2.jar file:///usr/share/java/xalan-j2.jar
file:///usr/share/java/xml-commons-apis-1.0.jar

to the end of UNO_JAVA_JFW_CLASSPATH_URLS line in
/opt/openoffice.org/program/jvmfwk3rc 

ProviderBrowseNode[create] failed with: com.sun.star.lang.WrappedTargetException:

java.io.IOException: com.sun.org.apache.xml.internal.serialize.XMLSerializer not
found in
gnu.gcj.runtime.SystemClassLoader{urls=[file:/opt/openoffice.org/program/classes/jurt.jar,file:./,file:/opt/openoffice.org/program/classes/ridl.jar,file:/opt/openoffice.org/program/classes/java_uno.jar,file:./,file:/opt/openoffice.org/program/classes/sandbox.jar,file:/usr/share/java/bsh.jar,file:./,file:/opt/openoffice.org/program/classes/classes.jar,file:/opt/openoffice.org/program/classes/commonwizards.jar,file:./,file:/opt/openoffice.org/program/classes/docbook.jar,file:/opt/openoffice.org/program/classes/htmlsoff.jar,file:./,file:/opt/openoffice.org/program/classes/java_uno_accessbridge.jar,file:/opt/openoffice.org/program/classes/js.jar,file:./,file:/opt/openoffice.org/program/classes/juh.jar,file:/opt/openoffice.org/program/classes/jut.jar,file:./,file:/opt/openoffice.org/program/classes/letter.jar,file:/opt/openoffice.org/program/classes/officebean.jar,file:./,file:/opt/openoffice.org/program/classes/query.jar,file:/opt/openoffice.org/program/classes/report.jar,file:./,file:/opt/openoffice.org/program/classes/ScriptFramework.jar,file:/opt/openoffice.org/program/classes/ScriptProviderForBeanShell.jar,file:./,file:/opt/openoffice.org/program/classes/ScriptProviderForJava.jar,file:/opt/openoffice.org/program/classes/ScriptProviderForJavaScript.jar,file:./,file:/opt/openoffice.org/program/classes/unoil.jar,file:./,file:/opt/openoffice.org/program/classes/web.jar,file:/opt/openoffice.org/program/classes/XFlatXml.jar,file:./,file:/opt/openoffice.org/program/classes/xmerge.jar,file:/opt/openoffice.org/program/classes/XMergeBridge.jar,file:./,file:/opt/openoffice.org/program/classes/XSLTFilter.jar,file:/opt/openoffice.org/program/classes/XSLTValidate.jar,file:./,file:/opt/openoffice.org/program/classes/xt.jar,file:./,file:/opt/openoffice.org/program/classes/agenda.jar,file:/opt/openoffice.org/program/classes/aportisdoc.jar,file:./,file:/opt/openoffice.org/program/classes/avmedia.jar,file:./,file:/opt/openoffice.org/program/classes/fax.jar,file:/opt/openoffice.org/program/classes/pexcel.jar,file:./,file:/opt/openoffice.org/program/classes/pocketword.jar,file:./,file:/usr/share/java/hsqldb.jar,file:/opt/openoffice.org/program/classes/sdbc_hsqldb.jar,file:./,file:./],
parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}


Comment 2 Anthony Green 2005-11-01 15:01:29 UTC
Created attachment 120605 [details]
jvmfwk3rc file after modification

Comment 3 Anthony Green 2005-11-01 15:03:17 UTC
(In reply to comment #1)
> rats...
> 
> add 
> 
> file:///usr/share/java/xerces-j2.jar file:///usr/share/java/xalan-j2.jar
> file:///usr/share/java/xml-commons-apis-1.0.jar
> 
> to the end of UNO_JAVA_JFW_CLASSPATH_URLS line in
> /opt/openoffice.org/program/jvmfwk3rc 

Done, but no change.  I've attached my modified file for reference.  The newly
referenced jar files are definitely installed on my system.

Where did you get this additional error text from?

> 
> ProviderBrowseNode[create] failed with: com.sun.star.lang.WrappedTargetException:
> 
> java.io.IOException: com.sun.org.apache.xml.internal.serialize.XMLSerializer not
> found in
>
gnu.gcj.runtime.SystemClassLoader{urls=[file:/opt/openoffice.org/program/classes/jurt.jar,file:./,file:/opt/openoffice.org/program/classes/ridl.jar,file:/opt/openoffice.org/program/classes/java_uno.jar,file:./,file:/opt/openoffice.org/program/classes/sandbox.jar,file:/usr/share/java/bsh.jar,file:./,file:/opt/openoffice.org/program/classes/classes.jar,file:/opt/openoffice.org/program/classes/commonwizards.jar,file:./,file:/opt/openoffice.org/program/classes/docbook.jar,file:/opt/openoffice.org/program/classes/htmlsoff.jar,file:./,file:/opt/openoffice.org/program/classes/java_uno_accessbridge.jar,file:/opt/openoffice.org/program/classes/js.jar,file:./,file:/opt/openoffice.org/program/classes/juh.jar,file:/opt/openoffice.org/program/classes/jut.jar,file:./,file:/opt/openoffice.org/program/classes/letter.jar,file:/opt/openoffice.org/program/classes/officebean.jar,file:./,file:/opt/openoffice.org/program/classes/query.jar,file:/opt/openoffice.org/program/classes/report.jar,file:./,file:/opt/openoffice.org/program/classes/ScriptFramework.jar,file:/opt/openoffice.org/program/classes/ScriptProviderForBeanShell.jar,file:./,file:/opt/openoffice.org/program/classes/ScriptProviderForJava.jar,file:/opt/openoffice.org/program/classes/ScriptProviderForJavaScript.jar,file:./,file:/opt/openoffice.org/program/classes/unoil.jar,file:./,file:/opt/openoffice.org/program/classes/web.jar,file:/opt/openoffice.org/program/classes/XFlatXml.jar,file:./,file:/opt/openoffice.org/program/classes/xmerge.jar,file:/opt/openoffice.org/program/classes/XMergeBridge.jar,file:./,file:/opt/openoffice.org/program/classes/XSLTFilter.jar,file:/opt/openoffice.org/program/classes/XSLTValidate.jar,file:./,file:/opt/openoffice.org/program/classes/xt.jar,file:./,file:/opt/openoffice.org/program/classes/agenda.jar,file:/opt/openoffice.org/program/classes/aportisdoc.jar,file:./,file:/opt/openoffice.org/program/classes/avmedia.jar,file:./,file:/opt/openoffice.org/program/classes/fax.jar,file:/opt/openoffice.org/program/classes/pexcel.jar,file:./,file:/opt/openoffice.org/program/classes/pocketword.jar,file:./,file:/usr/share/java/hsqldb.jar,file:/opt/openoffice.org/program/classes/sdbc_hsqldb.jar,file:./,file:./],
> parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
> 



Comment 4 Caolan McNamara 2005-11-01 15:49:01 UTC
The errors come from running with system property ScriptJavaRuntimeDebug enabled
e.g. OOO680_m3/scripting/java/com/sun/star/script/framework/log/LogUtils.java

the jvmfwkrc looks good, I was debugging this and may have made an additional
change to get it working, but I don't think so.

Comment 5 Anthony Green 2005-11-01 16:50:52 UTC
(In reply to comment #4)
> The errors come from running with system property ScriptJavaRuntimeDebug enabled
> e.g. OOO680_m3/scripting/java/com/sun/star/script/framework/log/LogUtils.java

Ok, I just ran.. 

GCJ_PROPERTIES="ScriptJavaRuntimeDebug=true" /usr/bin/oowriter > /tmp/oowriter.log

and am about to attach the output for the record.  During this run I tried to
create a BeanShell macro via Organize Macros.

Comment 6 Anthony Green 2005-11-01 16:51:59 UTC
Created attachment 120612 [details]
Output log

Comment 7 Caolan McNamara 2005-11-01 19:45:49 UTC
that log looks ok, take a look in
~/.openoffice.org2.0/user/Scripts/beanshell/Library1/ and see if there was
anything created. 

s/Library1/whateverlibnameyouusedwhenprompted/

it occurs to me now that I tested with rawhide OOo and not FC4, and there may be
a difference there. Will give fc4 a go tomorrow.

Comment 8 Anthony Green 2005-11-02 02:55:05 UTC
(In reply to comment #7)
> that log looks ok, take a look in
> ~/.openoffice.org2.0/user/Scripts/beanshell/Library1/ and see if there was
> anything created. 
> 
> s/Library1/whateverlibnameyouusedwhenprompted/

It's an empty directory.


Comment 9 Caolan McNamara 2005-11-02 10:02:38 UTC
Created attachment 120634 [details]
replacement ScriptFramework.jar

caolanm->green: overwrite
/usr/lib/openoffice.org2.0/program/classes/ScriptFramework.jar with this
ScriptFramework.jar and see if that makes a difference ?

Comment 10 Anthony Green 2005-11-02 13:16:04 UTC
> caolanm->green: overwrite
> /usr/lib/openoffice.org2.0/program/classes/ScriptFramework.jar with this
> ScriptFramework.jar and see if that makes a difference ?

Yes - it does!  I can create a library with a parcel-descriptor.xml now.  I was
hoping I would then be able to "Edit..." this but that button remains grey.


When I went into the system scripts, to edit BeanShell HellWorld, I got the 
following crash after the window popped up.

0xb3d028: /usr/lib/openoffice.org2.0/program/libuno_sal.so.3 + 0x1e028
0xb3d7ee: /usr/lib/openoffice.org2.0/program/libuno_sal.so.3 + 0x1e7ee
0xb1b420:  + 0x420 (__kernel_sigreturn + 0x0)
0x6c1888: /lib/libc.so.6 + 0x29888 (abort + 0xf8)
0xfb13b1: /usr/lib/libglib-2.0.so.0 + 0x2c3b1 (g_logv + 0x462)
0xfb13e5: /usr/lib/libglib-2.0.so.0 + 0x2c3e5 (g_log + 0x29)
0xfb1451: /usr/lib/libglib-2.0.so.0 + 0x2c451 (g_assert_warning + 0x6a)
0x61a1d60: /usr/lib/lib-gnu-java-awt-peer-gtk.so.6 + 0x48d60
(Java_gnu_java_awt_peer_gtk_GtkToolkit_gtkInit + 0x0)
0x6199e65: /usr/lib/lib-gnu-java-awt-peer-gtk.so.6 + 0x40e65 (pre_event_handler
+ 0x254)
0x7720be2: /usr/lib/libgtk-x11-2.0.so.0 + 0x10bbe2
0xf51285: /usr/lib/libgobject-2.0.so.0 + 0x8285 (g_closure_invoke + 0x10a)
0xf5f75b: /usr/lib/libgobject-2.0.so.0 + 0x1675b
0xf60c23: /usr/lib/libgobject-2.0.so.0 + 0x17c23 (g_signal_emit_valist + 0x41e)
0xf61223: /usr/lib/libgobject-2.0.so.0 + 0x18223 (g_signal_emit + 0x29)
0x77fc627: /usr/lib/libgtk-x11-2.0.so.0 + 0x1e7627
0x771f798: /usr/lib/libgtk-x11-2.0.so.0 + 0x10a798 (gtk_main_do_event + 0x33d)
0x6199a2f: /usr/lib/lib-gnu-java-awt-peer-gtk.so.6 + 0x40a2f (awt_event_handler
+ 0x2e)
0xa93df6: /usr/lib/libgdk-x11-2.0.so.0 + 0x3bdf6
0xfa84ce: /usr/lib/libglib-2.0.so.0 + 0x234ce (g_main_context_dispatch + 0x1dc)
0xfab4d6: /usr/lib/libglib-2.0.so.0 + 0x264d6
0xfab9b8: /usr/lib/libglib-2.0.so.0 + 0x269b8 (g_main_context_iteration + 0x66)
0x566bcf: /usr/lib/openoffice.org2.0/program/libvclplug_gtk680li.so + 0x18bcf
0x75c0afa: /usr/lib/openoffice.org2.0/program/libvclplug_gen680li.so + 0x45afa
(X11SalInstance::Yield(unsigned char) + 0x28)
0x2088594: /usr/lib/openoffice.org2.0/program/libvcl680li.so + 0x88594
(Application::Yield() + 0x48)
0x20885ca: /usr/lib/openoffice.org2.0/program/libvcl680li.so + 0x885ca
(Application::Execute() + 0x26)
0x3729c73: /usr/lib/openoffice.org2.0/program/libsoffice.so + 0x21c73
(desktop::Desktop::Main() + 0x15ab)
0x208d99f: /usr/lib/openoffice.org2.0/program/libvcl680li.so + 0x8d99f
0x208da4f: /usr/lib/openoffice.org2.0/program/libvcl680li.so + 0x8da4f (SVMain()
+ 0x29)
0x3724ad7: /usr/lib/openoffice.org2.0/program/libsoffice.so + 0x1cad7 (sal_main
+ 0x57)
0x3724b23: /usr/lib/openoffice.org2.0/program/libsoffice.so + 0x1cb23 (main + 0x27)
0x6acd5f: /lib/libc.so.6 + 0x14d5f (__libc_start_main + 0xdf)
0x80484e1: /usr/lib/openoffice.org2.0/program/swriter.bin + 0x4e1


Comment 11 Caolan McNamara 2005-11-02 13:23:23 UTC
Once you have a library created, then you use new again inside the library to
create a module which should then be "editable"

so...

a) oky doky, I got this (from the OOo side) working correctly out of the box in
rawhide version openoffice.org-2.0.0-3.7.2 now. 

b) I have a theory for why fc4 continues to be shafted which I bet is related to
the gcj accessor bug which I had worked around, but seems to have come upstuck
for ant-build driven modules.

c) I get the above crash too. When the rawhide OOo version gets pushed and the
bug is easily reproducable by anyone i'll write a bug for the gcjawt crash
against gcj :-)

Comment 12 Anthony Green 2005-11-02 13:29:12 UTC
(In reply to comment #11)
> c) I get the above crash too. When the rawhide OOo version gets pushed and the
> bug is easily reproducable by anyone i'll write a bug for the gcjawt crash
> against gcj :-)

Sounds good.

Also try editing JavaScript macros.  There's no obvious crash, it's just that
nothing happens and I'm returned to editing my document.