cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

Bug 145198 - Cannot build profiler cluster without j2ee
: Cannot build profiler cluster without j2ee
Status: RESOLVED FIXED
: profiler
Base
: 6.0
: All All
: P2 (vote)
: 6.7
Assigned To:
:
:
:
: ARCH
:
:
  Show dependency treegraph
 
Reported: 2008-08-26 18:35 by
Modified: 2009-02-19 22:56 (History)
Issue Type: DEFECT
:


Attachments
Possible patch (untested by me) (2.53 KB, patch)
2008-08-26 18:39, Jesse Glick
Details | Diff
Proposed patch (tested - creates intercluster depndency) (51.72 KB, patch)
2009-02-11 13:42, J Bachorik
Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2008-08-26 18:35:04
Currently if you run

ant -Dcluster.config=basic

(or '...=java') you do not get the Profiler. cluster.properties excludes
nb.cluster.profiler from these configs, since
it depends on the enterprise cluster (due to profiler.j2ee* modules) which is
not built.

(The downloaded Basic IDE does contain the Profiler, since the build in this
case builds all clusters, then packages
some of them up. But this also suffers from the problem that the Basic IDE will
contain Java EE-specific modules which
cannot be enabled.)

Since in the current packaging system the Profiler is more "basic" than Java
EE, the cluster dependencies should be
reversed.
------- Comment #1 From 2008-08-26 18:39:17 -------
Created an attachment (id=68360) [details]
Possible patch (untested by me)
------- Comment #2 From 2008-08-28 08:08:44 -------
I agree from the end user point. From architecture one, that however means the
profiler creates an inter cluster API 
and j2ee cluster consumes it. It is desirable to upgrade its friend status to
more stable one in the longer term.
------- Comment #3 From 2008-08-28 15:55:36 -------
1. I hear there are already plans for a more formal API for the Profiler.

2. There are already a number of friend dependencies both from and to the
profiler cluster, including j2ee <-> profiler.
It is possible that moving profiler.j2ee* to the j2ee cluster would in fact
reduce the total number of friend
dependencies, though it is hard to give a meaningful measure to this.
------- Comment #4 From 2008-12-10 22:18:59 -------
Obviously before making any change like this you should try (clean) building
some cluster configs. Also run:

ant check-module-configs

which will report several kinds of common mistakes.
------- Comment #5 From 2009-02-10 23:37:10 -------
*** Issue 158195 has been marked as a duplicate of this issue. ***
------- Comment #6 From 2009-02-10 23:39:54 -------
Should be fixed ASAP, see duplicate. Should be trivial. I can refresh my
suggested patch if needed (might no longer
apply cleanly).
------- Comment #7 From 2009-02-11 13:41:27 -------
I have a patch ready. 
This will introduce a new inter-cluster dependency (enterprise will depend on
profiler) but there is no intention of
upgrading the friend APIs to public APIs.
If you have any concerns about this, please, express your opinions.
------- Comment #8 From 2009-02-11 13:42:17 -------
Created an attachment (id=76855) [details]
Proposed patch (tested - creates intercluster depndency)
------- Comment #9 From 2009-02-11 15:09:30 -------
Please use spaces rather than tabs in cluster.properties.


I'm not sure I understand the logic of the change. Why would you leave modules
such as profiler.j2ee.weblogic in the
profiler cluster, thus in the Java IDE? Seems they belong in the enterprise
cluster, so they will be active only when
you are actually using Java EE app servers. Not sure I understand what the new
profiler.j2ee.generic module is for, but
it seems that all the profiler.j2ee* modules should simply be moved to
enterprise (as in my older patch) and you would
be done.
------- Comment #10 From 2009-02-11 15:27:35 -------
Alas, the profiler.j2ee.* modules might have been named improperly. They have
nothing to do with the J2EE (enterprise)
cluster. They don't depend on any modules from that cluster. They are used by
the "Attach Profiler" wizard to enable a
user to attach to an external (not IDE integrated) server and the possibility
to attach to an external app server must
be available even if the enterprise cluster is not installed. Because of this
they should better stay the way they are.

On the other hand, the profiler.j2ee module provides features which directly
depend on the enterprise cluster and as
such it should be moved to the enterprise cluster (thus creating inter-cluster
dependency). In order to be able to move
that module to the enterprise cluster and not to loose one of the attachment
options ("Generic J2EE/WebApp Server") I
needed to extract that implementation into a separate module that will stay in
the profiler cluster.
------- Comment #11 From 2009-02-11 15:35:31 -------
I see, that makes more sense.
------- Comment #12 From 2009-02-12 12:50:54 -------
This one is fixed in http://hg.netbeans.org/profiler-main/rev/e1e2eea0caf6
------- Comment #13 From 2009-02-12 12:53:26 -------
Adjusting the milestone
------- Comment #14 From 2009-02-13 21:48:21 -------
Integrated into 'main-golden', will be available in build *200902131548* on
http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/e1e2eea0caf6
User: Jaroslav Bachorik <yardus@netbeans.org>
Log: #145198 - enabling the profiler cluster to be built without the enterprise
cluster