--- Begin Message ---
Title: wtp-dev Digest, Vol 13, Issue 62
Send wtp-dev mailing list submissions to
wtp-dev@xxxxxxxxxxx
To subscribe or unsubscribe via the World Wide Web, visit
https://dev.eclipse.org/mailman/listinfo/wtp-dev
or, via email, send a message with subject or body 'help' to
wtp-dev-request@xxxxxxxxxxx
You can reach the person managing the list at
wtp-dev-owner@xxxxxxxxxxx
When replying, please edit your Subject line so it is more specific
than "Re: Contents of wtp-dev digest..."
Today's Topics:
1. Re: WTP 1.5 and XDoclet support (Naci Dai)
2. RE: Server API change proposal (Konstantin Komissarchik)
----------------------------------------------------------------------
Message: 1
Date: Tue, 21 Mar 2006 21:17:53 -0800
From: Naci Dai <naci.dai@xxxxxxxxxxxxx>
Subject: Re: [wtp-dev] WTP 1.5 and XDoclet support
To: "General discussion of project-wide or architectural issues."
<wtp-dev@xxxxxxxxxxx>
Message-ID: <4420DE01.60001@xxxxxxxxxxxxx>
Content-Type: text/plain; charset=UTF-8; format=flowed
Radoslav,
XDoclet is not for EJB3.
Project DALI is dealing specifically with the EJB3 support. You will
probably get a chance to try it very soon. I am afraid it will not be
included with the 1.5 due to the short time available. However, you
will be able to get it separately. In the longer term, it will be
integrated into the wtp distribution.
> Hi all,
>
> I have few questions regarding WTP 1.5 and XDoclet support.
> How the XDoclet annotations will be handled in WTP1.5? If an
> application developer generate EJB 3.0 bean he/she can use just JDK
> 5.0 annotations without ejb-jar xml descriptor and therefore the
> XDoclet is not needed. How the bean wizard will look like in this case?
>
>
> Where I can find what the plans in this direction are?
> I tried here
> _https://bugs.eclipse.org/bugs/show_bug.cgi?id=130814_ but found
> nothing relevant
>
> Thanks and Regards,
> Radoslav
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> wtp-dev mailing list
> wtp-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/wtp-dev
>
------------------------------
Message: 2
Date: Wed, 22 Mar 2006 06:24:44 -0800
From: "Konstantin Komissarchik" <kosta@xxxxxxx>
Subject: [wtp-dev] RE: Server API change proposal
To: "Ted Bashor" <tbashor@xxxxxxx>, "Thomas Yip" <tyip@xxxxxxx>,
"General discussion of project-wide or architectural issues."
<wtp-dev@xxxxxxxxxxx>
Cc: Timothy Deboer <deboer@xxxxxxxxxx>, Gorkem Ercan
<gorkem.ercan@xxxxxxxxx>
Message-ID:
<99479F4D39C9244F8E17E688193A3DD80CC744@xxxxxxxxxxxxxxxxxxxxx>
Content-Type: text/plain; charset="us-ascii"
"registered to module/facet id + server/runtime id"
We should probably utilize the eclipse expressions framework here. We
already have a project property tester for facets. We would have to
write one for the runtime.
For the ordering, I think we can do something similar to what we do for
facets. Each delegate could specify which delegates it depends on. We
could then sort the list in the dependency order. Such a system would be
a lot less fragile than doing it based on an ordinal number manually
assigned to each delegate.
- Konstantin
________________________________
From: Ted Bashor
Sent: Tuesday, March 21, 2006 6:27 PM
To: Thomas Yip; 'General discussion of project-wide or architectural
issues.'
Cc: Konstantin Komissarchik; 'Gorkem Ercan'; 'Sachin Patel'; 'Timothy
Deboer'
Subject: RE: Server API change proposal
One thing I would add is that the Publish process and the Archive Export
process should be very, very similar from an extension/api point of
view.
For both processes, I'd suggest that the WTP framework should be based
on running an ordered list of delegates registered to module/facet id +
server/runtime id. WTP would include some default/reference delegate
implementations - e.g. ones that assemble an EAR, WAR, or EJB in a
directory, ones that deploy to Tomcat, etc.
-Ted
________________________________
From: Thomas Yip
Sent: Monday, March 20, 2006 7:01 PM
To: General discussion of project-wide or architectural issues.
Cc: Ted Bashor; Konstantin Komissarchik; Gorkem Ercan; Sachin Patel;
Timothy Deboer
Subject: Server API change proposal
Introduction
This proposal briefs the limitation we see with current server publish
API, and it suggests a solution. We had a short discussion during a
conference call on Mar 13th, 2006. (mainly around the
ServerBehaviourDelegate). The problem is also related to
https://bugs.eclipse.org/bugs/show_bug.cgi?id=123676
Current API
We learned the original design was driven by a need of a very simply
publish mechanism.
1. an adopter should able to implement a simply delegate and do the
publish work.
2. publish tasks was intent to be simple task.
3. most methods can be overridden.
BEA use-cases
We found the current API is not ideal for BEA needs.
We delay much of publish process until user do an explicit publish
action (menu item publish, or Run on Server).
1. We generates *.java file based on annotation of Java file in
publish time. We trigger project rebuild during process.
2. We insert information into application descriptors (web.xml,
application.xml) based on files on the project.
3. Generated artifacts can cause changes to the EAR or other
modules in the same application.
4. Publish application by application.
5. Publish failure should be isolated between modules.
For us, the publish process is better described as a 3 steps process:
Assembly (artifact generation), Packaging (we package virtually), and
Distribution (calls JSR-88 to distribute the application to the server).
Limitation
The current SPI was driven by the need of simple publishing. The publish
process iterates module by a flattend module list (not application by
application.)
Because that most methods can be overridden, we can achieve our goal
reasonably well. However, it incurs maintenance risk, because are not
really implementing the delegate's SPI. For example,
1. if a fix or an enhancement is made to PublishOperation, our
server adapter lag behind, and enhancement will not be supported.
2. We short circuit a few methods, such as publishModules() (which
is a violate the interface). If any of the methods is called by new code
that we haven't overridden, it causes unexpected behaviour.
Because of the different design goal, we don't implement the full spec
of ServerBehaviourDelegate. While such changes might not be likely, an
adopter should not be required to implement their delegate in a way to
violate the SPI contract.
Solution
Required changes
We can eliminate the problem by the following changes:
1. Introduce another delegate. Let's call it
BaseServerBehaviourDelegate for now. The current ServerBehaviourDelegate
should make extended of BaseServerBehaviourDelegate. Most generic
methods can be push up. (such as state settings, module controls,
resource delta maintaince. But, it leaves out
a. code related to published module list, and the kind.
PublishOperation, and
b. all the publish methods. Introduce an adapter interface
to indicate PublishOperation is supported.
The changes will maintain compatibility for all current adopter, and the
original design goal. It enables adopter with different needs to have
full control of the publish process.
2.
a. Either, makes publish operation optional. Push down
PublsihOperation related code to the original ServerBehaviour Delegate.
b. Or, factors out PublishOperation into utility class or
method.
c. Or, made PublishOperation not depends on the flatten
module path (IModule[] representing the sub module and its parents).
3. Introducing another extension point for UI to replace the
hard-coded publishTask page fragment. Move UI for publishOperation as an
extension.
A brief study of the code indicated that we should able to implement it
in a way that it doesn't affect existing adopter.
Optional changes
A few optional changes can be introduced to ease the work of an adopter.
1. Publishing application-by-application is common to many servers.
We might want to introduce another BehaviourDelegate.
2. Generic server is already use application-by-application
approach. We should look into merging the requirements.
3. Going further, we can also introduce the 3 steps publish process
for adopter with complicated publish use-case.
--------------------
Thomas Yip
Senior Software Engineer
BEA Systems
Email: tyip@xxxxxxx YIM: thomasleaf Phone: (206) 926-2906 Blog:
http://theBigGrid.com/
"The complexity you remove can never fail." Burt Rutan.
_______________________________________________________________________
Notice: This email message, together with any attachments, may contain
information of BEA Systems, Inc., its subsidiaries and affiliated
entities, that may be confidential, proprietary, copyrighted and/or
legally privileged, and is intended solely for the use of the individual
or entity named in this message. If you are not the intended recipient,
and have received this message in error, please immediately return this
by email and then delete it.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://eclipse.org/pipermail/wtp-dev/attachments/20060322/f06b30f8/attachment.html
------------------------------
_______________________________________________
wtp-dev mailing list
wtp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/wtp-dev
End of wtp-dev Digest, Vol 13, Issue 62
***************************************
--- End Message ---