This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 127132 - SOA module installation broken
Summary: SOA module installation broken
Status: VERIFIED FIXED
Alias: None
Product: installer
Classification: Unclassified
Component: Debian (show other bugs)
Version: 6.x
Hardware: All Linux
: P1 blocker (vote)
Assignee: mslama
URL:
Keywords:
Depends on: 127717
Blocks:
  Show dependency tree
 
Reported: 2008-02-11 15:26 UTC by Ivan Sidorkin
Modified: 2008-03-20 18:52 UTC (History)
6 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
messages.log (3.99 MB, text/plain)
2008-02-12 11:13 UTC, Ivan Sidorkin
Details
Verbose ant output from test with list of missing jars (19.42 KB, text/plain)
2008-02-18 11:00 UTC, mslama
Details
Diff of fix (4.04 KB, text/plain)
2008-02-28 15:29 UTC, mslama
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Sidorkin 2008-02-11 15:26:30 UTC
Product Version: NetBeans IDE 6.0.1 (Build 080206)
Java: 1.6.0-ea; Java HotSpot(TM) Client VM 11.0-b06
System: Linux version 2.6.24-7-generic running on i386; UTF-8; en_US (nb)

- installed NB as deb package
- installed SOA modules via UpdateCenter
- istalled GlassFish+OpenESB (from full 6.0.1 NBI installer)

- create SynchronousSample
- try to build it
BUILD SUCCESSFUL but tith many "Cannot find null" messages in log
- try to deploy it
deployed with same messages
- try to test it

Null Test: 	Caused an ERROR
org.netbeans.modules.compapp.catd.ConfiguredTest
java.lang.ClassNotFoundException: org.netbeans.modules.compapp.catd.ConfiguredTest
        at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:186)


Test org.netbeans.modules.compapp.catd.ConfiguredTest FAILED
test-report:
/home/tester/NetBeansProjects/SynchronousSample1/SynchronousSample1Application/nbproject/build-impl.xml:371: Some tests
failed; see details above.
BUILD FAILED (total time: 0 seconds)
Comment 1 mslama 2008-02-11 15:36:50 UTC
Who is responsible for SOA module? I am not able to say what is wrong/why it fails. I need info what should is different
between normal IDE and IDE installed from packages. Content should be the same though there is many symlinks to external
libraries.
Comment 2 Petr Blaha 2008-02-11 17:22:48 UTC
Ivan, can you please attach NetBeans log? thanks
Comment 3 _ hong_lin 2008-02-11 18:38:39 UTC
Sergey (slunegov@netbeans.org) is the dev manager of SOA. Adding him into the CC list.
Comment 4 Ivan Sidorkin 2008-02-12 11:13:51 UTC
Created attachment 56508 [details]
messages.log
Comment 5 mslama 2008-02-12 14:52:33 UTC
Now it is clear. Reason for this is that in IDE we use patched resolver1.2. Ubuntu folks did not accept new package
(Netbeans fork) for resolver1.2 just with our changes and in xml team there is nobody who could explain/approve that our
changes can be pushed to resolver original codebase. We contacted Petr Kuzel who worked on this. Result is:
1.API change in xml resolved should be pushed into resolver upstream (original code).
2.Fix of NPE should be handled in our NetBeans code.

xml module should handle this. As it is late for this to get into resolver1.2 debian package we will not support this in
NB 6.0.1. xml module should handle this fro NB 6.1.
Comment 7 _ hong_lin 2008-02-12 20:19:49 UTC
Hi mslama, 
Do you mean that NB6.0.1 SOA module won't be supported on Ubuntu?
Comment 8 mslama 2008-02-12 21:16:08 UTC
It means that SOA will not work on NB installed from Ubuntu packages. If NB is installed by regular installer it will
work fine. Workaround could be to replace symlink to resolver jar in /usr/share/netbeans/ide8/modules/ext by patched
resolver jar.
Comment 9 mslama 2008-02-12 21:23:00 UTC
Of course that workaround means manual change AFTER NetBeans IDE package is installed. In such case better solution for
user would be probably install IDE directly using our installer.
Comment 10 Ivan Sidorkin 2008-02-12 22:04:28 UTC
Hi mslama, 
could you please attach patched resolver jar for testing workaround 
Comment 11 Ivan Sidorkin 2008-02-12 22:34:09 UTC
I installed NB 6.0.1 using normal installer
linked /usr/share/netbeans/ide8/modules/ext/resolver-1.2.jar to the same jar in 6.0.1 istallation
now I can build and deploy application without "Cannot find null" messages in log
but still can't run tests with same error:

Null Test: 	Caused an ERROR
org.netbeans.modules.compapp.catd.ConfiguredTest
java.lang.ClassNotFoundException: org.netbeans.modules.compapp.catd.ConfiguredTest
        at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
....
Comment 12 mslama 2008-02-13 13:29:45 UTC
Probably it is necessary to replace jar ide8/modules/org-netbeans-modules-xml-catalog.jar by version from normal NB
6.0.1. Because of missing API in original resolver jar I had to patch
xml/catalog/src/org/netbeans/modules/xml/catalog/impl/sun/Catalog.java to be able to compile sources against original
resolver. Please try and let me know result.
Comment 13 Ivan Sidorkin 2008-02-13 14:32:50 UTC
the same error with replaced org-netbeans-modules-xml-catalog.jar
Comment 14 mslama 2008-02-13 16:37:40 UTC
I tried but I do not know how to start GlassFish so that it is possible to add it Services tab in IDE. Please explain.
As there is CNFE I expect problem with classpath. It would be good if someone from SOA team could investigate and say
what is wrong. Thanks.
Comment 15 mslama 2008-02-18 10:59:08 UTC
Ok. We was able to reproduce problem here. Reason for this is wrong classpath:
a) test expects all jars to be present in install dir, if they are in user dir like in this case they are not
used/found. This should be fixed in test infrastructure IMO. Please file separate issue for it. I do not know who should
handle it or if there is some simple way how to configure it in this project type. In J2SE project nbinst protocol is
used to handle this ie. to find out libs in NB install dir or user dir.
b) some jars from java1 cluster are missing. Our configuration is stripped so you must install additional modules from
UC. (missing module dependency???? btw I had to install Glassfish plugin to be able to use GF from IDE, it was not
mentioned anywhere in you report.

If classpath problem could be solved in SOA we could on our side provide update to update resolver1.2.jar and
org-netbeans-modules-xml-catalog.jar. So please let us know soon if we should prepare patch for UC.
Comment 16 mslama 2008-02-18 11:00:37 UTC
Created attachment 56808 [details]
Verbose ant output from test with list of missing jars
Comment 17 mslama 2008-02-18 11:01:56 UTC
List of missing jars (full test log is attached):
dropping /usr/share/netbeans/6.0.1/soa1/modules/org-netbeans-modules-compapp-manager-jbi.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/catd.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/xmlunit-1.0.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/api/saaj-api.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/saaj-impl.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/FastInfoset.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/org-netbeans-modules-compapp-manager-jbi.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/catd.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/xmlunit-1.0.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/api/saaj-api.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/saaj-impl.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/FastInfoset.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/org-netbeans-modules-compapp-manager-jbi.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/catd.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/xmlunit-1.0.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/api/saaj-api.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/saaj-impl.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/FastInfoset.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/org-netbeans-modules-compapp-manager-jbi.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/catd.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/soa1/modules/ext/jbi/xmlunit-1.0.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/api/saaj-api.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/saaj-impl.jar from path as it doesn't exist
dropping /usr/share/netbeans/6.0.1/java1/modules/ext/jaxws21/FastInfoset.jar from path as it doesn't exist
Comment 18 Jun Qian 2008-02-19 10:05:00 UTC
All the jars being dropped are required to run the test cases in CompApp project. See CompApp project's
nbproject/build-impl.xml.

> test expects all jars to be present in install dir, if they are in user dir like in this case they are not
used/found. 

Why the jars are in the user dir and not in NB install dir in the first place? Is it possible to set up symlinks from NB
install dir to the user dir for all the missing jars?

Comment 19 mslama 2008-02-19 10:22:41 UTC
>Why the jars are in the user dir and not in NB install dir in the first place? Is it possible to set up symlinks from NB
>install dir to the user dir for all the missing jars?

It is how autoupdate works: Packages are installed under root. Normal user does not have write access to install dir so
SOA installed from UC is installed into user dir. This scenario is not specific to packages. Even if user have write
access to install dir user can set if he wants to install plugin into install dir (ie. global installation) or user dir.
It can be set in Settings tab in Plugin dialog (there is check box "Force install into shared directories" at bottom).
Default install target is user dir. So SOA will not work if installed from UC into user dir.

Creating symlinks is bad idea IMO. Who would know what symlinks to create? To do this it is necessary to have write
access to install dir anyway. Better is to run UC as root and install SOA into install dir if there is no other solution.
Comment 20 mslama 2008-02-19 10:24:41 UTC
Correct solution is to make test work when SOA is installed in user dir. This is valid scenario.
Comment 21 mslama 2008-02-19 10:53:03 UTC
I was asked by Tonda to file separate issue against SOA samples. Issue is #127717.
Comment 22 mslama 2008-02-28 15:27:30 UTC
The fix has been backported into the release601_fixes branch:
/cvs/ide/kit/Attic/manifest.mf,v  <--  manifest.mf
new revision: 1.4.2.1.4.2; previous revision: 1.4.2.1.4.1

/cvs/ide/kit/nbproject/Attic/project.xml,v  <--  project.xml
new revision: 1.7.2.1.4.2; previous revision: 1.7.2.1.4.1

/cvs/libs/resolver/Attic/manifest.mf,v  <--  manifest.mf
new revision: 1.4.6.1.4.1; previous revision: 1.4.6.1

/cvs/xml/catalog/nbproject/Attic/project.properties,v  <--  project.properties
new revision: 1.16.4.1.4.1; previous revision: 1.16.4.1

/cvs/xml/catalog/nbproject/Attic/project.xml,v  <--  project.xml
new revision: 1.11.8.1; previous revision: 1.11
Comment 23 mslama 2008-02-28 15:29:42 UTC
Created attachment 57461 [details]
Diff of fix
Comment 24 mslama 2008-02-28 15:37:25 UTC
Fix is for autoupdate to install Netbeans fork of resolver-1.2 into userdir and unpatched version of xml-catalog. This
is workaround for issue #128678.
Comment 25 Mikhail Kondratyev 2008-03-05 11:21:25 UTC
Verified.

I did the following:
 - installed NB 6.0.1 on Ubuntu from Native packages
 - installed org-apache-resolver, org-netbeans-modules-xml-catalog, org-netbeans-modules-ide-kit modules
 - installed SOA and J2EE modules
 - created Sync Sample, built, deployed it without errors

There is still ClassNotFound exception when running the tests - but this is a separate issue.