JEE Status Meetings/2009-11-19
- Carl Anderson
- Chuck Bridgham
- Angel Vera
- Rob Stryker
- Jason Sholl
Java EE 6
- Java EE Tools plan
- EJB Tools plan
- List of Java EE 6 bugs that need to be rolled into the WTP 3.2 plan
Make export operation pull from wst.server APIs to reduce redundancy and inconsistancy 265798
Review of Java EE 6 - we've got a lot done and will have almost all of it done for M4.
Chuck: bug 290041 - I've enabled the assembly page for all of the Java EE assembly types. I've overridden some of the behavior for adding/removing references that modify the MANIFEST. I added a button that does an "Add Web Lib reference" - we can talk about that. I added icon decoration. I added a button to edit the EAR lib folder.
Rob: It sounds like the only thing to debate is whether or not the buttons actually belong there.
Chuck: Adding the web lib button was easiest, but we need more design discussion to decide if this was the best course to take. How would we differentiate this in the add reference dialog?
Rob: You would need a different operation- one that doesn't update the MANIFEST. I don't know how you would designate that easily.
Chuck: It was easy to do by adding a button. In terms of the user experience, I am not sure if the additional button is the right thing. Another thing to discuss- it is a bit of a chore to do multiple adds. It should not be too hard to do a multi-select.
Rob: I've done something similar to my JBoss version of this. I can look into making this code available to WTP for multi-select.
Jason: We could have the add reference wizard be a subclass, and have a checkbox at the bottom to specify that this is in web lib.
Carl: If we have the checkbox, would it default to on or off?
Chuck: What about multi-select and the checkbox? Also, we need an extensible way to resolve the archive name of components, so I created an interface to handle that. There are definitely ways to customize the wizards and pages.
Jason: We want to strive to keep this page consistent across all module types, and put the specialization in the pages that
are brought up. For example, for EE 5/6, when you are adding references, you don't need to update the MANIFEST, for instance if you are putting the reference into the EAR's lib folder. We may hit some more special cases as we move forward.
Chuck: This is mostly handled by the different types of projects that we are targetting. But for the web case, it is a little different- there are two different types of references that can be added here.
Jason: What about web fragment?
Chuck: We'll have to take a look at it.
Jason: Also, it doesn't look like it is correctly enabling/disabling the finish button.
Chuck: Let's open separate bugs to track this.
Rob: We need to pass in some key attributes as to what components apply, and then the wizard needs to figure out what is already there and not show those.
Chuck: The EAR case, that is fairly simple. But when you add references from a web to an ejb, there are different ways to do it- the reference to the ejb could be added to the EAR, or to the Web. Another example is utility modules- you have to go to the ear and add the reference there before it shows up for the EJB.
Jason: In order to get that to work, that reference needs to be in the EAR at deploy time.
Chuck: I understand that it would be more work to automagically add the reference to the EAR, but if the user wants to add a reference to that jar, let's add it to the EAR.
Jason: Keep in mind that the EE 1.4 (and before) case it is just add it to the MANIFEST. For the EE 5/6, there is add it to the MANIFEST or add it to the EAR's lib dir.
Chuck: I think it is safe to always add it to the MANIFEST. I think we need to pass in an interface that does the filtering for us.
Rob: The first thing we are going to need is a bug that outlines the specific use cases.
Chuck: Another part that needs to be done is the edit of references.
Angel: Is edit refs already there? I believe you currently have to remove it and re-add.
Rob: The goal is to bring up the wizard page and allow it to edit it there and the operations will handle it. And if we allow for this type of editing, any custom type of reference that is allowed can be edited in your own custom wizard pages.
Chuck: Are we going to display the derived references?
Rob: I didn't plan on displaying the derived references.
Chuck: I agree - this page is basically editing the contents of the .component file. However, we also get hit on not having a one-stop shop to see all of the references in the module.
Rob: I could add a "show derived references" check box, but those would not be editable/removeable.
Jason: We should strive to add this. I could see a user coming in and trying to add a reference that already exists, but they don't know that. They might think they need to add it, but it is already there.
Chuck: That does not sound like priorty 1, but it is something to strive for during this release.
Rob: We could also sort it and have those at the bottom... maybe greyed.
Chuck: That's all I had for the Module Assembly page.
Rob: Angel - have you looked at the Flexible Module list?
Angel: The one that I am prioritizing first is bug 291833.
Discussion between Rob and Angel about Rob's list- these are not items required for Java EE 6 support, but are items that users have been asking for. Angel will work with adopters and see what he can get in.
Carl: Anything more we want to discuss on this call?
Jason: We've started in ernest to merge the deployment and archive code so that they are one and the same.
Rob: How would I follow the progress and API change?
Jason: API will not change. We probably have enough done to post a patch this week. We are looking to commit in 2 weeks. Also, we are merging the deployable factories, so that there is one for both.
Rob: You need to be careful there- the deployed modules have the factory id stored as well. The API does look at the id to see what is deployed in that module. The server tools will look for that factory id and if it doesn't exist, it will say the module doesn't exist.
Jason: We were going to keep both factories around. We were just going to deprecate the one.
Rob: Work with Tim deBoer- he's done a lot to ensure that factories and ids don't disappear.