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 28859 - Class Not Found Exception
Summary: Class Not Found Exception
Status: VERIFIED FIXED
Alias: None
Product: qa
Classification: Unclassified
Component: Test Tools (show other bugs)
Version: 3.x
Hardware: All All
: P1 blocker (vote)
Assignee: Jiri Skrivanek
URL:
Keywords:
Depends on: 28981
Blocks:
  Show dependency tree
 
Reported: 2002-11-19 16:53 UTC by Adam Sotona
Modified: 2004-07-07 10:00 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Sotona 2002-11-19 16:53:19 UTC
TestTools module uses GroupShadow class, but group
module has disabled all possible dependencies.
Please remove this line from manifest:

OpenIDE-Module-Public-Packages: -
Comment 1 Jesse Glick 2002-11-20 16:05:20 UTC
Not a bug - GroupShadow was not intended for public consumption.

TestTools can use it only if it declares an implementation dependency
on the group module (for impl deps, OIDE-M-P-P is ignored). That means
that a version of test tools is bound to that version of group and
only tested with it; if the GroupShadow class changes arbitrarily (it
is not an API) then test tools will have to make corresponding changes
and match the new impl version.

Petr Kuzel probably has experience with doing this kind of thing from
the XML modules, which "published" evolving APIs only intended to be
accessed from a few "friend" modules.

Better of course would be not to use the class at all. Perhaps you
don't really need to.
Comment 2 Adam Sotona 2002-11-20 16:37:49 UTC
If this is not a public API so do it.
The only thing I need is .getLinks() to obtain objects linked into the
group.

All the templates in NetBeans are going to be GroupShadow objects and
it will be nice to see so many "friend" modules to Group :-)

TestTools module depends on many other modules, I solve incompatible
changes each day and solvig this will add me a lot of work.
For you it is just to remove one line from manifest.

Comment 3 Jesse Glick 2002-11-22 10:48:10 UTC
This is not an incompatible change; you were never supposed to be
using this class to begin with. There will not be other "friend"
modules because there is a documented public capability of using
*.group files without making calls into the classes in the module. The
one line in the manifest is there for a good reason.

Issue #28422 provides a better solution, IMHO.

*** This issue has been marked as a duplicate of 28422 ***
Comment 4 Adam Sotona 2002-11-25 10:03:57 UTC
still important bug
Comment 5 Adam Sotona 2002-11-25 10:04:34 UTC
re=assigned
Comment 6 Adam Sotona 2003-01-02 14:45:21 UTC
implemented workaround:
all the code of GroupShadow has been copied directly into moduel code
- urgh :-(
Comment 7 Jiri Skrivanek 2003-11-05 14:10:59 UTC
Reassigning...
Comment 8 Marian Petras 2003-11-09 12:35:57 UTC
Would it be sufficient if GroupShadow objects provided a list of
contained DataObjects (accessible via
org.openide.loaders.DataObject.Container.getChildren())? I.e. it would
be possible to get a list of valid links; broken links would not be
accessible.
Comment 9 Jiri Skrivanek 2004-02-18 17:23:17 UTC
Fixed as suggested in testtools module:

WizardIterator 1.21
WizardSettings 1.10
Comment 10 Jiri Skrivanek 2004-07-07 10:00:54 UTC
Verified.