|
November 16, 2004
This is a moderated forum. MDR-EdO: Welcome to today's chat on the NetBeans 4.1 IDE. The NetBeans 4.1 IDE, which is now available as an Early Access Release, delivers significant new capabilities for developing Java 2 Platform, Enterprise Edition (J2EE) applications, EJB components, and web services. In today's chat you'll be able to ask questions about these new capabilities and get answers from three key members of the NetBeans 4.1 team: the Senior Product Manager, Larry Baron, Technical Lead, Ludovic Champenois, and Engineering Manager, Petr Jiricka. Our guests are ready, so who has the first question? Mr. Bean: Why is Sun making so much fuss about NetBeans 4.1, when 4.0 is not released yet? Larry Baron: In parallel to the development of NetBeans 4.0 we've been working on the exciting J2EE development capabilities in NetBeans 4.1 and we want to preview these to developers. vbk: How does NetBeans 4.1 EA1 compare to the Sun Java Studio Enterprise? Ludovic Champenois: Sun Java Studio Enterprise is the enterprise IDE. It is build on top on NetBeans, and as such includes all the good features of NetBeans. Sun Java Studio Enterprise extends NetBeans by adding new modules and more server supports. For example, the next version of Sun Java Studio Enterprise will have UML support, Collaboration Support (chats within the IDE sharing files), and support the entire Java Enterprise System (JES) stack (Web Server, Identity Server, Portal Server, etc.). beany: What key features does Java Studio Enterprise add on top of NetBeans? Petr Jiricka: The major features are UML support (creation of EJB beans from UML, for example) and better team collaboration features. It will also integrate better with the rest of the Sun Java Enterprise System stack: Identity Server, Portal Server, Directory Server. Lordy: Hello. I have a question about NetBeans and Java WebStart. Why doesn't NetBeans use Java WebStart as the deployment technology? I like the fantasy of starting NetBeans in the morning and getting the latest night build, or, as a normal user, the new version. Similarly, maybe RTFs for WebStart could also be found. Petr Jiricka: Excellent suggestion. In fact, we have considered this and even have a prototype of this functionality. We have lots of ideas for improvements in future releases, but you are right, we should consider this too. Mr. Bean: When is NetBeans 4.1 scheduled to be fully available? The NetBeans site says Spring, 2005. Can you be more specific? Larry Baron: The target for NetBeans 4.1 is to release it in April. So far we are right on schedule. rich_unger: What types of features do these modules provide with respect to creating web services interfaces/implementations? Ludovic Champenois: NetBeans 4.1 exposes wizards to create new JSR 109 web services within web application or Enterprise JavaBean (EJB) technology modules. The user model is simplified as NetBeans automatically modifies the necessary entry for sgsst: I'm interested in web services and how NetBeans 4.1 helps develop and deploy them. Any comments? Petr Jiricka: You can create a web service either from an existing WSDL file or from an existing Java class (which also creates the WSDL for you). Then you can easily call a web service from any Java code. Ludovic Champenois: With respect to web services support, web services clients that can interact with existing WSDL files are possible in that case, as well as in the IDE web services testing framework. GlennHolmer: How easy will it be to develop web services in 4.1? Ludovic Champenois: Very, very easy. Compare, for example, a tutorial based on command-line tools: The IDE automatically modifies the deployment descriptors, and the Ant support of the NetBeans project calls the WSCOMPILE tools so that the portable artifacts are generated. Just click Run, and the application will deploy to the application server automatically. sgsst: Wouldn't the sheer size of NetBeans preclude a WebStart implementation? Petr Jiricka: Not really. The download size is still the same (or similar) when using a standalone installer. Download size does not represent an obstacle—in fact, Java WebStart has support for downloading only a diff file, so it could be smaller for Java Web Start (JWS). GlennHolmer: Will there be changes to the Form Editor in 4.1? Larry Baron: The Form Editor in 4.1 will be the same as it is in 4.0 Beta 2. Are there specific changes you'd like to see? sgsst: How functional is the web service support in EA1? Ludovic Champenois: See the Quickstart tutorial. In EA1, web-tier web service creation is possible. For EA2 (currently, nightly builds are available), the web services support is extended to the EJB tier. Lordy: When will NB 4.1 Release Candidate be available for the Mac OS X? And why it isn't available at the moment? Larry Baron: The plan is to have Mac OS X support with the April release, but not before. We'd love to have it out now but it's a question of resources. The Mac OS X version will be available with the final release. Jimbo: Are the web services improvements based on any common implementation (for example, Axis) or on some new Sun implementation? Ludovic Champenois: It is based on JWS Java API for XML-based RPC (JAX-RPC). sgsst: Is there anything 4.0 can do better than 4.1? Ludovic Champenois: 4.1 is built on top of 4.0. Larry Baron: The big difference between 4.0 and 4.1 is the J2EE 1.4 EJB and web services development capability. Other than bug fixes, what you see in 4.0 will all move forward to 4.1 Kirill K.: Hi, I'd like first of all to thank the core team, management, and all the developers for your outstanding work. Now, when Ant is an integral part of NetBeans 4.0 plus, are there any plans to go even further and incorporate the Maven library to handle project maintenance? I have been using the Mevenide module and find Maven very useful for my goals, but it seems that the module is still too raw to be used in production. Are there any plans from your side to move the project system to participate in existing module development of Maven? Petr Jiricka: Actually, the Mevenide module is co-developed by a Sun employee! So it is possible that, in the future, we might stabilize it, productize it, and include it in base NetBeans distribution. This won't happen in 4.1 though. rich_unger: I've come across some WSDL files that seem typical of the type of service generated by .NET tools, but which formulate types in a way that is unusable by Axis (attribute groups, for example). Is there anything here that would help me interoperate with such services? Ludovic Champenois: This is a general question about Web Services interoperability and J2EE 1.4. wqt: What is the status of current bug fixes of 4.0 being merged to the 4.1 daily build? Petr Jiricka: All NetBeans 4.0 fixes are already a part of the 4.1 daily build, and they are put into 4.1 as they come. GlennHolmer: Tim Boudreau mentioned some changes to the 4.1 Form Editor in an interview. Do you have any information on that? Larry Baron: We are currently planning future releases past 4.1, and we are always exploring new directions. Guest: Who is the target audience for the NetBeans 4.1 J2EE features? Larry Baron: In a nutshell, it is for developers who want to use EJB beans and web services, and to target the Sun Java System Application Server Platform Edition 8.1 (2005Q1). Kirill K.: Are there any plans to add uninstallation support to the Update Center tool? The need for it becomes particularly obvious when one tries to use unstable or third-party modules (such as Mevenide). Petr Jiricka: Many users have asked about this, and we are aware of this issue. We want to add this support; we just don't know when it can be scheduled in. Larry Baron: Adding on to Petr's answer on uninstall, it might be a requirement for our next release past 4.1 antoine: I think someone mentioned this on the list, but are JBoss and other J2EE application servers going to be supported under 4.1? Ludovic Champenois: Good question! We are working hard on making plug-in creation easier in NetBeans 4.1. As of today, the integration is via JSR 88 for configuration and deployment. We are extending this set of APIs with Ant-based tasks. So if an application server vendor can integrate with Ant (that is, provides Ant tasks for deploy, undeploy, start server, stop, start in debug mode, and so on) then the integration will be easy. We encourage the community to develop these plug-ins. sgsst: Will applications built in 4.1 be deployable to application servers other than Sun's? Ludovic Champenois: NetBeans 4.1 includes a plug-in for the Sun Java System Application Server Platform Edition 8. This is a J2EE 1.4 compliant server that is provided for free for development, as well as free for deployment. sgsst: Free or not, we have to deploy to the production environment we are given Ludovic Champenois: Sorry, I pressed Return too early. For other application servers, you will need to see if the community is exposing plug-ins for NetBeans 4.1. Meanwhile, you can use NetBeans 4.1 to develop these apps and tests them. When you are ready, you can use the specific application server vendor's deploy tool to adjust only the server-specific deployment descriptor files. As I said earlier, we are working on abstract Ant tasks used by NetBeans so that deploy/start/stop, and so on, for a specific server can be added via Ant. The new NetBeans build system is now based on Ant, and of course is extensible to custom user-defined tasks. wqt: About plug-ins, is there a plan to make all 3.6 plug-ins work with 4.x? Petr Jiricka: No. The changes in NetBeans 4.0 are too extensive, both from the API perspective and the user model/user interface perspective. So while some modules may continue to work in NetBeans 4.0, many will need to be changed, so they fit into the new NB 4.0 user interface. lazaridis_com: To my knowledge, Sun's Java Studio Creator application development tool is not based on the main NetBeans code-stream. What is the reason that NetBeans 4.x is still (after five years) not highly modular? Will the Java Studio Creator codebase merge with the 4.1 codebase (that is, basic NetBeans platform-based product, additional Java Studio Creator-specific extension modules)? Larry Baron: The Java Studio Creator IDE is built on NetBeans 3.6 and will be synchronized around the NetBeans 4.0 release. Mr. Bean: When will support for entity bean creation be added to NetBeans 4.1? Petr Jiricka: This is happening right now. Current development builds already support creation of container-managed persistence entity beans (CMP beans) from an existing database table; support for bean-managed persistence beans (BMP beans) is coming soon. Guest: I'm sorry, I missed the beginning of the chat, so I don't know if this has been discussed before: What can you tell us of the new features of the Form tool (GUI RAD)? Larry Baron: The Form editor from 4.0 will migrate unchanged to 4.1. We are looking at improvements in releases past NB 4.1 wqt: About refactoring, what are the exact features that will be added for 4.1? By the way, although this was pretty much a catch-up job to Eclipse, kudos to the refactoring team! Ludovic Champenois: In 4.1, refactoring is extended to J2EE deployment descriptors, so that if you rename a Java EJB beans file, for example, then the refactoring will also be done in the Chiss: Are you excited by the latest JFluid module? Larry Baron: The Profiler in NetBeans is based on the JFluid work done at Sun Labs. The developer of that technology in the Labs has joined the NetBeans development team. The technology is very exciting. It will be out in Beta with 4.0 and it will ship in production in 4.1. Kirill K.: I have asked this question on the NBUsers mailing list, but received no answer. It might be too technical for this discussion, though. Is there a detailed and full reference to the NetBeans 4 Petr Jiricka: Interesting feedback. So far, we considered the free-form configuration document sufficient and complete. I don't think there is a more elaborate document. But then, it would be better to support more advanced configuration through the NetBeans UI, wouldn't it? If you describe what particular config tasks you are doing, we can consider it for a future release. Kirill K.: I'm currently at the planning stage. My immediate needs include getting to use the subprojects feature, so I can define a basic building script and properties files for all the projects and then use them as a base for writing per-project buildfiles. This should be done in a flexible manner, to allow different build configurations. I'd be happy to have just a complete reference about the Petr Jiricka: OK, I see. Yes, the ability to build subprojects and track dependencies of subprojects is a very reasonable requirement. rich_unger: Is there a schedule yet for getting JFluid and JDK 5 working together? Larry Baron: There sure is. It will work with JDK 5 in the production version of 4.1 (General Availability around April 2005). lazaridis_com: Will there be any conversion support for 3.6 to 4.x plug-ins? Ludovic Champenois: Plug-ins development is based on either Open APIs that are highly stable (3.6 to 4.0 is almost the same), as well as other plug-ins' exposed APIs. The NetBeans product follows architecture and API review processes (see Review Steps, Reviews, and the index). sgsst: Will 4.1 provide any support for JavaServer Faces technology? Petr Jiricka: We plan to provide very limited support, in terms of setting up a JavaServer Faces project, adding the JavaServer Faces library to a classpath, and so on. No advanced support for Ludovic Champenois: For JavaServer Faces support, we do provide some BluePrint samples in EA1. Also the JavaServer Faces libraries are registered in the library manager, and the Faces Config XML file will have code completion and inline XML validation in it. Chiss: Anything new on the core-platform side? Larry Baron: The main emphasis of NetBeans 4.1 has been to incorporate the J2EE EJB and web services development capability. Beyond that, a lot of bug fixing will go on but no major changes to core. We are working on our plans, so if you have suggestions for RFEs, please let us know. Mr. Bean: I'm assuming that there will be no regression in performance with NetBeans 4.1, right? Larry Baron: Correct. We are making sure that the performance with NetBeans 4.1 has no changes with respect to the NB 4.0 baseline. Any regressions are handled each week at one of our team meetings. wqt: Regarding 4.1 refactoring, is there a list of features that will be added to 4.1 on top of 4.0? Petr Jiricka: There will be some additions, although we don't have an exact list at this point. Most notably, we will make refactoring work better with J2EE development, that is, with deployment descriptor files, JSPs, TLD files, and other configuration files. rich_unger: Just wanted to share my experience moving my 20 plus modules from 3.5 to 4.0, since there seem to be a few questions on this. It was not a trivial port, but it was mostly a matter of removing hacks and workarounds that were necessary in 3.5 (especially around projects support and the windowing system), and replacing them with much cleaner API calls in the newer APIs. Ludovic Champenois: That's why a formal review process has been developed, as well as API classification like stable, private, and friends -- so that you know in advance whether the APIs exposed by other modules are OK to use or will require you to upgrade your modules in a subsequent release. This is becoming more and more important as NetBeans grows as a tools platform. See the links I mentioned earlier. vbk: What is the best way to get my pet features on the radar for future versions of nb Larry Baron: Two ways. One, put it in Issuezilla as an RFE. You can also send your input to me as I work on requirements. I'd love to hear from you. wqt: Regarding the 4.1 daily build: Will this replace the 4.0 daily build? Petr Jiricka: Yes. There will not be many more builds of NetBeans 4.0. Development is practically done, and we are only doing builds on demand. There will be a lot of testing on NetBeans 4.0. NetBeans 4.1 is now the main trunk development code line. Larry Baron: How many of you folks have downloaded NetBeans 4.1 EA and taken it for a spin? wqt: I downloaded the 4.1 EA, tried web project, and found some bugs that were fixed in the 4.0 daily build not there in 4.1. So I quit. Larry Baron: Thanks. Have a little patience as things are moving along real-time. sgsst: I downloaded it, but haven't had time to "take it out for a spin." Larry Baron: Thanks. When you can, please do take it for a ride. I think that even in this early access version you'll see some really nice features for EE development. We wanted to get this out to developers to get significant feedback. vbk: Can i have 4.0 and 4.1 EA installed on the same machine? Ludovic Champenois: Yes, they use different user directories so that the settings are independent. On my system, I have 3.6, 4.0, the 4.1 nightly build, as well as Java Studio Creator and Java Studio Enterprise, and they all cohabit nicely together :-) antoine: I'm not so sure about that. I installed the latest build of 4.1 and it took over the Ludovic Champenois: Yes, 4.1 EA1 has its own user dir, but the 4.1 nightly build is now using the Lordy: When there will not be many more builds of 4.0, what can the Mac OS community do? Only use the "old" 4.0 version with no bug fixes from the nightly build? Petr Jiricka: Does 4.0 not work on Mac for you? It surely should, and it is tested on that platform. Can you be more specific about what the exact issues are? The latest builds are pretty stable, much more stable than 4.0 Beta2. Lordy: Sorry, you misunderstand me. You wrote that 4.1 will have Mac support in April when 4.1 will be released, and then I read that 4.0 nightly builds will be replaced with 4.1 nightly builds. So the only question is if 4.1 NetBeans will have Mac support before April. Petr Jiricka: We are planning to have a new public Early Access release in January, and, in this release, we will attempt to provide Mac support. We cannot make a 100% promise at this point, though. sgsst: On web services: I have an application that is currently using Axis for development and deployment. How difficult will it be to migrate the code to NetBeans 4.1? Ludovic Champenois: If this J2EE application follows the JSR 109 specification, you should not have any issues. Axis is yet another implementation, but should be compliant. Now if you are using non-specification capabilities, I am not sure how long it will take. In NetBeans 4.1 EA2, the J2EE Verifier Tool will be integrated so that you can test your J2EE apps against the J2EE 1.4 specification. Kirill K.: The other thing I'd like to do is about fetching the classpath, defined with the GUI project customizer for the freeform project in the Ant script and using it for compilation. This would allow me to avoid tracking classpath changes in two different places. Petr Jiricka: Again, a very reasonable request, and something we are also thinking of. I agree this would be a very useful feature. You should only need to specify classpath once. Our current thinking is that if you want to maintain classpath in the GUI, you should use the regular project; and if you want to maintain it by hand in the Ant script, you should use freeform project (and not need to also specify it in the GUI). Kirill K.: Petr, that is my subject, too ;) Currently, in order to be able to see correct symbols resolving in the editor, and to do the compilation, I need to perform this synchronization by hand. That's why I'd like to be able to fetch the classpath from the Petr Jiricka: OK, I see. This is difficult. We are thinking about collecting classpath from the Ant script and passing it to sgsst: So, conversely, I should be able to develop with 4.1 and deploy to Axis. Correct? Ludovic Champenois: Let us know if this does not work (nbj2ee@netbeans.org). vbk: Is it possible to create the artifacts for an unsupported deployment target (like JBoss) and include them in the J2EE artifacts? Ludovic Champenois: Yes, by using the XML capabilities of NetBeans 4.0 or 4.1. Synchronization with J2EE descriptors then is not automatic, but it is possible. Kirill K.: Petr, doesn't the GUI classpath affect how the IDE parses the source files and detects unresolved symbols? Petr Jiricka: Yes, it does. However, for freeform projects it does not affect the actual classpath at build time. So I am talking about synchronizing the real classpath, used for building, with the IDE classpath used by the editor. juneau001: I apologize since I just arrived, and you may have already answered this question: Is there any future chances of JavaServer Faces support for 4.1? Ludovic Champenois: Some support is already there (library, code completion, xml validation, samples). WYSIWYG support: not in 4.1. sgsst: Actually, Axis is really just a servlet under Tomcat, right? So it would be, essentially, deployment of the web service to the Servlet 2.4 environment, right? Petr Jiricka: NetBeans will work with containers that are J2EE 1.4 compliant. In particular, JSR 109 is required. I am not sure if Tomcat plus Axis supports JSR 109. If it does, it should more or less work. rich_unger: Are there any new project types being considered going forward? Ludovic Champenois: Yes, such as J2EE App Clients projects, for example, in future releases. Also J2ME clients, I think, coming from the J2ME cluster. Mr. Bean: When will the next EA version be available? Larry Baron: NetBeans 4.1 EA2 will be available in January. Then will move to milestones for Beta and Release Candidate, ending in General Availability in April. dmartin: I've heard some concern on NBUsers about 4.1 being a fork, not a future version on the same line as 4.0. The concern then, is that creating a project in 4.1 locks the project into this fork. Should I be concerned about that? Will my 4.1 EA projects work in the future releases of NetBeans past 4.1? Petr Jiricka: NetBeans 4.1 will not be a fork. While it is true that we don't guarantee compatibility for EA versions (so you should not expect to be able to use EA projects in 4.1 final), compatibility of projects between 4.0 and 4.1 will be assured, and projects from previous (final) versions will continue to work on later versions. MDR-EdO: Well, we've quickly come to the end of our session. I'd like to thank everyone who participated today. I thought we had a nice range of questions. And of course, I'd especially like to thank our guests
Larry, Ludovic, and Petr for their answers. Look for a transcript of today's session on Ludovic Champenois: Thanks all for the good questions. Keep posting them on the nbj2ee@netbeans.org mailing list, and we'll make sure to provide answers. Larry Baron: Thanks to all for joining. Make sure to feed us your comments and suggestions on the aliases. Petr Jiricka: Thanks, everyone, for joining the chat. We are looking forward to more feedback on NetBeans 4.1 on the aliases. MDR-EdO: Moderator signing off. The forum is now unmoderated. | ||||
|
| ||||||||||||