Discussions

News: Oracle to develop EJB 3 Tool for Eclipse

  1. Oracle to develop EJB 3 Tool for Eclipse (51 messages)

    Oracle has announced that it will be building an EJB 3 Eclipse tool as a project within the Eclipse open-source community. The tool will support graphically defining and editing O/R mapping, based on Oracle's experience with the Toplink mapping workbench.

    In an interview with TSS, Dennis Leung, vice president of development, Oracle mentioned that the tool will target the EJB spec, but be built in a way that other vendors can build a plugin to provide proprietary value ad.

    When asked about how developing for Eclipse play's in to Oracle's strategy around JDeveloper, Oracle's J2EE & Appserver Principle Director Dennis MacNeil (formerly of Sun) responded that the functionality in the tool will be similar to what Oracle will also provide in JDeveloper, but they see this as contributing to the adoption of EJB over all and since it is a reality that Eclipse has a strong user base, writing for Eclipse was the right thing to do.

    The EJB 3 tool for Eclipse will be part of the Web Tools Project, but not part of the first release in July.

    Oracle's work on the EJB 3 tool is part of their wider and very visible support for EJB 3, which so far includes one of the first EJB 3 preview releases and a number of EJB 3 tutorials and code samples.

    Threaded Messages (51)

  2. Shudder!![ Go to top ]

    The Toplink workbench is NOT a tool that Oracle should model. I am hard press to think of a more cryptic, unintuitive, unstable tool.
  3. Re: Shudder!![ Go to top ]

    Dear Troll,
      It would be helpful if you actually used the software before trashing it. I find it hard to believe that you find the UI cryptic and unintuitive. Any examples? Have you actually SEEN the UI? I don't even know where to begin with such flamebait. How about posting a screenshot of what your issue is.

    For all you others, here's a link to a tutorial that shows it in action:
    http://www.oracle.com/technology/obe/obe9051jdev/introtoplink/toplinkintro.htm

    Also, the nicest thing about it is that it's non-obtrusive. Based on the mappings you define in the UI, it genrates a XML mapping document that the runtime persistance engine uses to determine how to map the objects to the RDBMS.

    -Chris
  4. Re: Shudder!![ Go to top ]

    Dear Troll,  It would be helpful if you actually used the software before trashing it. I find it hard to believe that you find the UI cryptic and unintuitive. Any examples? Have you actually SEEN the UI? I don't even know where to begin with such flamebait. How about posting a screenshot of what your issue is.For all you others, here's a link to a tutorial that shows it in action:http://www.oracle.com/technology/obe/obe9051jdev/introtoplink/toplinkintro.htmAlso, the nicest thing about it is that it's non-obtrusive. Based on the mappings you define in the UI, it genrates a XML mapping document that the runtime persistance engine uses to determine how to map the objects to the RDBMS.-Chris

    I have used it Chris. This is why I don't like it and I know how it works and what it does. First, the applications does not play well with other java applications. After I installed it, it throws IDEA exceptions. Second, if you think that the GUI doesn't appear to have been designed by someone who actually had to sit down and use the application day to day. The usability is just...well awful. The last time I used the Toplink workbench, for 9.0.3, BTW, was about 2/2004, so I am unable to remember specific items, but my feelings were echoed by the other people who had to use it.

    The XML is harsh and so complex as to be unreadable. I now use Hibernate and find its configuration clearer. I used Toplink on a project and tried Hibernate on a succeeding project and found Hibernate easier to manage WITHOUT a GUI tool.


    I have no problem with GUIs, GUI mappers, or configuration files, but I was not impressed by the Workbench. Being free, one can download it and try it and draw their own conclusions, but I stand by my assessment and feel that others would share it.

    Not a troll, just the opinion of someone who used Toplink and the Toplink Workbench. I just to don't think Oracle's(translation Toplink's) experience will be of much use and shudder at the thought of another GUI tool based on their earlier work.
  5. Re: Shudder!![ Go to top ]

    The XML is harsh and so complex as to be unreadable. I now use Hibernate and find its configuration clearer. I used Toplink on a project and tried Hibernate on a succeeding project and found Hibernate easier to manage WITHOUT a GUI tool.

    The authors of XML never intended for it to be used as a development language and we also subscribe to that philosophy. XML is for portable data and is meant to be read and generated. But don't worry. Nobody will force you to use Eclipse if you don't want to use it. You can continue to manually edit your XML files until you are neck-deep in them. I know that some people go for that sort of thing, just not me.
    I was not impressed by the Workbench. Being free, one can download it and try it and draw their own conclusions, but I stand by my assessment and feel that others would share it.

    Others already have drawn their own conclusions and commented that they do not share your assessment :-) Different strokes for different folks, I guess. All I can say is that loads of people have been successfully using the Workbench and deploying large-scale applications with it. They have been quite happy with it as well, so I guess our experience is that yours is a minority view.
    I just to don't think Oracle's(translation Toplink's) experience will be of much use and shudder at the thought of another GUI tool based on their earlier work.

    This is not just a matter of throwing together some dialogs. There is lots of integration and design work to do and the experience the Workbench team has is extremely valuable, whether or not the look and feel of the Workbench suits your particular fancy or not.
     
    There is no guarantee that everything in the Eclipse persistence project will look exactly like the Workbench, and if there are things about the Workbench that you like or don't like then your comments will certainly be welcome. I hope that if there were things in the Workbench that you had a hard time figuring out then you would be making those suggestions to the TopLink support team as well. That way if there are other people that see things the same way as you do then they could benefit by your suggestions as well.

    -Mike
  6. Re: Shudder!![ Go to top ]

    The XML is harsh and so complex as to be unreadable. I now use Hibernate and find its configuration clearer. I used Toplink on a project and tried Hibernate on a succeeding project and found Hibernate easier to manage WITHOUT a GUI tool.
    The authors of XML never intended for it to be used as a development language and we also subscribe to that philosophy. XML is for portable data and is meant to be read and generated. But don't worry. Nobody will force you to use Eclipse if you don't want to use it. You can continue to manually edit your XML files until you are neck-deep in them. I know that some people go for that sort of thing, just not me.
    I was not impressed by the Workbench. Being free, one can download it and try it and draw their own conclusions, but I stand by my assessment and feel that others would share it.
    Others already have drawn their own conclusions and commented that they do not share your assessment :-) Different strokes for different folks, I guess. All I can say is that loads of people have been successfully using the Workbench and deploying large-scale applications with it. They have been quite happy with it as well, so I guess our experience is that yours is a minority view.
    I just to don't think Oracle's(translation Toplink's) experience will be of much use and shudder at the thought of another GUI tool based on their earlier work.
    This is not just a matter of throwing together some dialogs. There is lots of integration and design work to do and the experience the Workbench team has is extremely valuable, whether or not the look and feel of the Workbench suits your particular fancy or not. There is no guarantee that everything in the Eclipse persistence project will look exactly like the Workbench, and if there are things about the Workbench that you like or don't like then your comments will certainly be welcome. I hope that if there were things in the Workbench that you had a hard time figuring out then you would be making those suggestions to the TopLink support team as well. That way if there are other people that see things the same way as you do then they could benefit by your suggestions as well.-Mike

    Well, I think if I was in the minority that something like Hibernate would have the success it is experiencing. In fact, I would say that you have a Hibernate as a direct result of Toplink's inability to own the market they arguably created after a decade of trying. EJB3 is not being modeled after Toplink, it is being modeled after Hibernate.

    Now, you say that the authors of XML intended. Well, Javabeans was meant to be a graphical component architecture, yet it became the primary means to serialize data for server-side applications and has been embraced by IOC containers, so I personally think it is limited to suggest that a particular technology can't grow beyond what the authors intended. After all, Java was intended for web boxes, yet here we are. Considering that tools like Struts, Hibernate, and Spring as well as many, many others successfully use READABLE XML, the fact that Toplink doesn't says more about Toplink than all the other tools. You should not need a GUI tool.

    You can use bad GUIs until you are neck deep. That just isn't for me.

    I'm always amazed at how sensitive people are to the software they use.

    "Nobody will force you."
    "...until you are neck deep."

    It's a tool gentleman. Relax.
  7. I think Borland has better technology and better understanding of how to make an EJB development tool that works with different application servers.

    Doychin
  8. I think Borland has better technology and better understanding of how to make an EJB development tool that works with different application servers.Doychin

    Huh? This announcement is about an EJB 3.0 O/R mapping tool. What does Borland know about O/R mapping??? Borland has not done persistence integrations for every major application server. Borland hasn't even been in the business of EJB persistence. Is Borland even still in business. :-) TopLink has done O/R mapping and persistence since before EJB 1.0.
  9. More Eclipse support from Oracle?[ Go to top ]

    Great news.
    Does it mean also that Eclipse WTP will support deployment on Oracle Application Server (OC4J)?
    Any clue when Oracle will deliver a WTP server definition file for OC4J?
  10. Hello,

    WTP uses the same definition files as Lomboz, and we have definition file for OC4J, this is available as an how to document on Oracle Technology Network.

    So you can today use these definition files, in Eclipse/WTP.

    We are also working on a version for the full Oracle Application Server, and we will submit the definitions to the ObjectWeb/Eclipse organization

    Regards
    Tug
  11. Borland doesn't know persistence[ Go to top ]

    Huh? This announcement is about an EJB 3.0 O/R mapping tool. What does Borland know about O/R mapping??? Borland has not done persistence integrations for every major application server. Borland hasn't even been in the business of EJB persistence. Is Borland even still in business. :-) TopLink has done O/R mapping and persistence since before EJB 1.0.
    Well, Borland JBuilder CMP Modeler is at least worth looking at. In my opinion JBuilder is the most friendly tool for CMP modeling on the market; it's not because it is ideal - other tools are crappy;)
    JBuilder's modeler provides many features, but the implementation is too buggy and lacks basic functionality - no zooming, no printing/export, sometimes you have to fix modeler XML files by hand to produce valid deployment descriptors.

    Regards,
    Theodore Kupolov
  12. No one expected it, but Eclipse is becoming the JBuilder killer (also JDeveloper killer to a less extent, because JDeveloper has never had much market). WebSphere Sudio is the first J2EE IDE based on Eclipse (version 5.x has Weblogic support as well), because IBM created the Eclipse foundation.
  13. Borland doesn't know persistence[ Go to top ]

    (P.S. not working for IBM or any IBM partner.)
  14. I dont understand why we need O/R mapper while using EJB . The only mapping i need when using a RDBMS and EJB is the class hierarchy mapping (or what is it called static mapping?)..
    But hierarchy mapping is only a very very minute part(though the most important) of any full fledged O/R mapping tool.

    Or am i missing something?.. i use EJB's and i use a full grown O/R mapper too?..

    Regards
    Surajeet
  15. I dont understand why we need O/R mapper while using EJB ..Regards Surajeet

    Disclosure: I work for Oracle as a product manager for TopLink and co-authored the Eclipse EJB 3.0 Object-Relational Mapping Project proposal.

    Surajeet,

    Once you've done some EJB3 O/R mapping by hand I think you'll see why tooling is attractive. A simple example is mapping an class to a table. EJB3 defaults the table name to the exact same as the class but if you want to map an Employee class to the EMP table, for example, you need to write:

    @Entity
    @Table(name = "EMP")
    public class Employee ...

    I wouldn't mind "code completion" to offer me possible table names as I type or even to allow me to specify the mapping in a UI and have the annotation inserted for me. The same is true for column mappings, join columns, etc.

    Sure, you can code everything by hand. I've had years of experience doing it myself. But I'd rather point and click :-).

      Shaun Smith
  16. Maybe this codebase can than be used to create a graphical mapper for hibernate :)

    Would be even better if you can just plug in a xsd definition, defining a set of rules (like hibernate mapping rules, jdo mapping rules etc..) that the graphical mapper can use. This way the user of the tool can choose the o/r mapping tool he wants.

    I also think this would adhere better to the idear of the eclipse platform and the webproject in specific.
  17. Maybe this codebase can than be used to create a graphical mapper for hibernate :)Would be even better if you can just plug in a xsd definition, defining a set of rules (like hibernate mapping rules, jdo mapping rules etc..) that the graphical mapper can use. This way the user of the tool can choose the o/r mapping tool he wants.I also think this would adhere better to the idear of the eclipse platform and the webproject in specific.
    That's a great idea Marc. Get writing it! :)
  18. This is great news. Do you plan to collaborate with recently proposed Eclipse Data Tools Project? From the proposal, I can see that DTP will include data modelling tools, ORM tools...
    http://www.eclipse.org/proposals/eclipse-dtp/index.html

    Dejan
  19. Do you plan to collaborate with recently proposed Eclipse Data Tools Project? Dejan

    Absolutely! The Data Tools Project plans to build much of the database access infrastructure that an EJB3.0 O/R mapping tool needs and we're definitely looking forward to working together.

       Shaun
  20. I dont understand why we need O/R mapper while using EJB . The only mapping i need when using a RDBMS and EJB is the class hierarchy mapping (or what is it called static mapping?).. But hierarchy mapping is only a very very minute part(though the most important) of any full fledged O/R mapping tool.Or am i missing something?.. i use EJB's and i use a full grown O/R mapper too?..RegardsSurajeet

    Surajeet,

    Hierarchy mapping is a tiny tny part of your mapping.
    But that's not all to a O/R mapper tool.
    Consider a case when you are working with hundreds of Entity EJBs and their CMRs and having to map each individual field by hand.
    A visual point and click is much much better than coding by hand.

    I've used TopLink Workbench for years and it is pretty intuitive. It has gotten better over the years.
    One can map in the GUI, generate ejb-jar.xml, generate Tables, schemas or even EJBs or go from any to any.

    Cheers,
    Srikanth
  21. Interesting!

    It's about time there were quality free J2EE plugins for Eclipse. Netbean 4.1 with J2EE support looks set for release in about a month, I wonder when the Eclipse Web Tools Project will release.
  22. In the interview on the Oracle site it is written:

    When do you expect the project to be completed?

    Although the schedule for this project has not yet been determined, we expect it to align with the Eclipse Web Tools schedule as well as the schedule for J2EE 5.0.


    They both are expected for July...
    Cesidio
  23. Looks like next year[ Go to top ]

    In their FAQ, it says they will ship in their own tools in fall of 2005.

    http://www.oracle.com/technology/tech/java/newto/faq_ejbeclipse.html

    I am certain yesterday in the press release on NEWS.com it said Q1 of 2006, which seems about right given their own tools won't have it until late 2005. It seems to have changed today and now says "within a year".

    http://news.com.com/Oracle+warms+to+Eclipse+with+open-source+project/2100-7344_3-5669641.html?tag=nefd.top

    We need something today.

    -Robert
  24. Looks like next year[ Go to top ]

    We need something today.

    Yesterday, actually. But that's why the EJB3.0 preview from Oracle already includes migration tools to get there. To prove, validate and test the migration abilities that will be essential tomorrow. I know some camps have their fingers in their ears yelling la-la-la when it comes to how they're going to migrate, but if you look at the previews, it's already there today.

     - Don
  25. In the interview on the Oracle site it is written:When do you expect the project to be completed?Although the schedule for this project has not yet been determined, we expect it to align with the Eclipse Web Tools schedule as well as the schedule for J2EE 5.0.They both are expected for July...Cesidio

    While the synergy with both the Web Tools Project and the newly created Data Tools Project is apparent, it is early to speculate on the ultimate location of O-R technology within Eclipse. The WTP management council, in conjunction with the Eclipse Foundation, ultimately owns the decision whether to admit this, or any other, potential contribution once it graduates from the incubation stage.

    - Pieter Humphrey, BEA Systems
  26. I hope the toplink guys will be in charge of creating the eclipse plugin. I don't want to ever touch an IDE made by the same team who created JDev, BC4J, UIX and all the other oracle crap.

    - Leonardo
  27. I hope the toplink guys will be in charge of creating the eclipse plugin. I don't want to ever touch an IDE made by the same team who created JDev, BC4J, UIX and all the other oracle crap.- Leonardo

    I've been using BC4J/UIX without major problems for at least 2 years. I'm also looking at Oracle's JHeadstart solution for rapid application generation, and so far it looks pretty powerful.

    Also, the new 10.1.3 IDE it's really way better than the latest production version, up to a point now that I think Oracle can compete with existing IDEs. Probably Oracle is getting right now by support the more "code-oriented" users.
  28. I hope the toplink guys will be in charge of creating the eclipse plugin. I don't want to ever touch an IDE made by the same team who created JDev, BC4J, UIX and all the other oracle crap.- Leonardo
    I've been using BC4J/UIX without major problems for at least 2 years. I'm also looking at Oracle's JHeadstart solution for rapid application generation, and so far it looks pretty powerful.Also, the new 10.1.3 IDE it's really way better than the latest production version, up to a point now that I think Oracle can compete with existing IDEs. Probably Oracle is getting right now by support the more "code-oriented" users.


    You didn't ever use JDev 9i or you probably work on a oracle shop that seels 9ias and JDev. Despite of how oracle may call it, there wasn't ever a production release of JDev... it's completly buggy and if you open a tar requesting a fix, you'll have to wait for 4 months till they accept it as a bug and other 4 months till they say they're not going to provide a patch and that you should upgrade to 10g... no, thanks.

    Leonardo.
  29. I have read EJB 3.0 (ORM part) borrows a lot from Hibernate. So why use TopLink for this effort? (perhaps the only reason here is because Oracle bought TopLink:)
    It would be worth the effort if Oracle makes the tool focused to Hibernate [but my opinion could be biased as I have never used TopLink. I started using Hibernate because of the following it had]

    Which is better is always a subjective question, but still would love to see some input.

    IMO, J2EE apps can survive by just using SLSB with Hibernate or just plain servlets with Hibernate.
    No need of any fancy EJB 3.0 as one would always need an EJB container to run EJB code...not just a servlet engine (which gives a lot of deploy-flexibility)
  30. <plug>
    If you are looking for O/R that is simple and lightweight check out jLynx http://www.topmindsystems.com
    </plug>

    Hibernate has got a lot of attention right now, however, Oracle has excellent tools and technology. I think Oracle will come up with something very compelling for enterprise developers. I get your point though. Most apps don't need EJB.
  31. I have read EJB 3.0 (ORM part) borrows a lot from Hibernate. So why use TopLink for this effort?

    I have to admit that I am getting a little irked (can you tell :-). People that don't have any real experience with O/R mapping, have never used products like TopLink that have had every O/R mapping feature that people have asked for over the last 10 years, suddenly pick up a free copy of Hibernate, use it and say that EJB 3.0 looks just like it. Of course it does. It also looks like every other decent O/R mapping product out there. That's the point. We are standardizing the persistence features that everybody is using in all of their products.

    If all you have ever seen is an apple then I guess every piece of fruit you see afterwards kind of looks like an apple. Doesn't mean it is one, just that your frame of reference is limited to that.
    It would be worth the effort if Oracle makes the tool focused to Hibernate [but my opinion could be biased as I have never used TopLink.


    Focusing the Eclipse tool on one product would be totally against what EJB 3.0 and Eclipse is all about. We are talking about standards.
    IMO, J2EE apps can survive by just using SLSB with Hibernate or just plain servlets with Hibernate.No need of any fancy EJB 3.0 as one would always need an EJB container to run EJB code...not just a servlet engine (which gives a lot of deploy-flexibility)

    Sure they can survive using plain servlets with Hibernate or TopLink or any other product under the sun. The point is that if you do that then you are not going to be able to use standards-based tools with full integration all the way across the stack (what Eclipse is all about). EJB 3.0 is not fancy, it is a standards-based projection of what produsts already support. You are not losing anything, you are gaining portability, support, market stability and everything else that standards provide.

    Let's say it again together. Standards.

    -Mike
  32. Hibernate Is Better[ Go to top ]

    I have used hibernate for about an year and am really amazed the way it works. I not sure about EJB 3.0 But only thing people are talking about is EJB 3.0 much of it is borrowed from Hibernate. Probabaly true, the Guy Mr Gavin who was the lead developer is now part of EJB 3.0 No wonder EJB 3.0 must be simialr to Hibernate. Atleast the learning curve involved in Hibernate is less when compared to EJB
  33. Hibernate Is Better[ Go to top ]

    I have used hibernate for about an year and am really amazed the way it works. I not sure about EJB 3.0 But only thing people are talking about is EJB 3.0 much of it is borrowed from Hibernate. Probabaly true, the Guy Mr Gavin who was the lead developer is now part of EJB 3.0 No wonder EJB 3.0 must be simialr to Hibernate. Atleast the learning curve involved in Hibernate is less when compared to EJB

    <Sigh>

    Vijay, all I can say is:

    http://www.jroller.com/page/mkeith/20050420
  34. Toplink isn't another EJB technology, it's an O/R tool just like Hibernate. Just like you can use Hibernate as the persistance engine for an EJB system, you can do the same thing for Toplink (in fact before EJBs had CMP, there was TopLink). TopLink's ui is just soooo nice compared to Hibernate's (oh yeah, hibernate doesn't have a UI, have fun modifying that xml!) Also, I like Toplink's Query API (as opposed to Hibernate's SQL-wannabe syntax that EJBs also try to support...man I hate that). There's tutorials abound for TopLink's QueryBuilder classes. Very nice, and it provides a very nice abstraction layer such that if you move to other database engines, the layer can pick wich is the optimal implementation. Also debugging is pretty nice, any query against the underlying db can be logged so you can see exactly what is happening in the engine. Hibernate may do this as well.

    -Chris
  35. I'd use TopLink[ Go to top ]

    Toplink isn't another EJB technology, it's an O/R tool just like Hibernate. Just like you can use Hibernate as the persistance engine for an EJB system, you can do the same thing for Toplink (in fact before EJBs had CMP, there was TopLink). TopLink's ui is just soooo nice compared to Hibernate's (oh yeah, hibernate doesn't have a UI, have fun modifying that xml!) Also, I like Toplink's Query API (as opposed to Hibernate's SQL-wannabe syntax that EJBs also try to support...man I hate that). There's tutorials abound for TopLink's QueryBuilder classes. Very nice, and it provides a very nice abstraction layer such that if you move to other database engines, the layer can pick wich is the optimal implementation. Also debugging is pretty nice, any query against the underlying db can be logged so you can see exactly what is happening in the engine. Hibernate may do this as well.-Chris

    I've used both and I prefer Hibernate. I didn't care for Toplinks query API. I believe that it made it harder to use than Hibernate. The query API, IMO, made it harder to understand what a particular query was doing. Conversely, IMO, Hibernate's HQL looked more like SQL and, IMO, was easier to understand. Both, as Chris stated, support logging.

    In addition, Toplink would swallow exceptions. Now, we had the debugging turned on and I'll fully admit that we may have had Toplink configured in such a way as to have it swallow say an OptimisticLockException, but if this was the case, throwing exceptions should be on by default.

    As I mentioned earlier, I found Hibernate easier to manage even though we didn't have a GUI tool. We used XDoclet to generate the files as part of an Ant task and this has worked quite well.

    Now, I think that both suffer from having good examples, but I think that the Hibernate documentation was at least as good as Toplink and obviously costs much less. We use POJOs, so our comparision was which made our jobs easier. Toplink, IMO, made easy things harder than they needed to be. I'm not saying that Toplink is hard, Hibernate kept easy things easy and its advance features scaled up well.

    Again, this could be my inexperience with Toplink, but it seemed to demand that you use its classes, like the ValueHolder for lazy instantiation.

    I just didn't care for that. I didn't want our domain objects using anything tied to a third party library. We didn't have to do that with Hibernate. And I didn't like care for the class generation that it seemed to encourage.

    BTW, Hibernate also as a Query API.
  36. I'd use TopLink[ Go to top ]

    I've used both and I prefer Hibernate. I didn't care for Toplinks query API. I believe that it made it harder to use than Hibernate. The query API, IMO, made it harder to understand what a particular query was doing. Conversely, IMO, Hibernate's HQL looked more like SQL and, IMO, was easier to understand.

    Well, TopLink actually has an object-based query API as well as supporting EJB QL (which is more of a SQL-based language, but is standardized for better protability) in any POJO query. Again, this is a matter of personal preference. We like the fact that people can choose whichever they like, but the one they choose is not for us to dictate.
    In addition, Toplink would swallow exceptions. Now, we had the debugging turned on and I'll fully admit that we may have had Toplink configured in such a way as to have it swallow say an OptimisticLockException, but if this was the case, throwing exceptions should be on by default.

    I can't say what you were doing wrong, but TopLink does not swallow exceptions by default. In fact the TopLink runtime exception model is the easiest one to use, which is why Hibernate finally decided to go that way as well.
    Again, this could be my inexperience with Toplink, but it seemed to demand that you use its classes, like the ValueHolder for lazy instantiation.I just didn't care for that. I didn't want our domain objects using anything tied to a third party library. We didn't have to do that with Hibernate. And I didn't like care for the class generation that it seemed to encourage.

    Not sure what you mean here. TopLink doesn't demand that any of its classes be used and it does not do any class generation that I can think of. Hibernate does some class generation when it proxies, is that what you meant? I guess I'm just not clear on what you mean.

    -Mike
  37. I'd use TopLink[ Go to top ]

    I've used both and I prefer Hibernate. I didn't care for Toplinks query API. I believe that it made it harder to use than Hibernate. The query API, IMO, made it harder to understand what a particular query was doing. Conversely, IMO, Hibernate's HQL looked more like SQL and, IMO, was easier to understand.
    Well, TopLink actually has an object-based query API as well as supporting EJB QL (which is more of a SQL-based language, but is standardized for better protability) in any POJO query. Again, this is a matter of personal preference. We like the fact that people can choose whichever they like, but the one they choose is not for us to dictate.
    In addition, Toplink would swallow exceptions. Now, we had the debugging turned on and I'll fully admit that we may have had Toplink configured in such a way as to have it swallow say an OptimisticLockException, but if this was the case, throwing exceptions should be on by default.
    I can't say what you were doing wrong, but TopLink does not swallow exceptions by default. In fact the TopLink runtime exception model is the easiest one to use, which is why Hibernate finally decided to go that way as well.
    Again, this could be my inexperience with Toplink, but it seemed to demand that you use its classes, like the ValueHolder for lazy instantiation.I just didn't care for that. I didn't want our domain objects using anything tied to a third party library. We didn't have to do that with Hibernate. And I didn't like care for the class generation that it seemed to encourage.
    Not sure what you mean here. TopLink doesn't demand that any of its classes be used and it does not do any class generation that I can think of. Hibernate does some class generation when it proxies, is that what you meant? I guess I'm just not clear on what you mean.-Mike


    I'm not arguing with the Runtime exception exception model. But the fact is that out of the box, Toplink failed to throw exceptions back to the application.

    Now, I'm going to take the opportunity to question you. Here is a comment added to a class GENERATED by Toplink

    "// ### TopLink Mapping Workbench 9.0.3 generated source code ###"

    and here is a line of code from that generated class that enables lazy instantation as configured by the Workbench.
    "private oracle.toplink.indirection.ValueHolderInterface rfmAcesSmsaCodeLv= new oracle.toplink.indirection.ValueHolder();"

    Now, considering how the comment pretty clearly says that it was generated by the Workbench, how can you suggest that Toplionk doesn't generate classes, something, that Hibernate definitely doesn't do.
  38. I'd use TopLink[ Go to top ]

    Well, I think if I was in the minority that something like Hibernate would have the success it is experiencing. In fact, I would say that you have a Hibernate as a direct result of Toplink's inability to own the market they arguably created after a decade of trying. EJB3 is not being modeled after Toplink, it is being modeled after Hibernate.

    David, the reasons why TopLink did not completely own the market when Hibernate came along have more to do with the poorly-managed company that used to own TopLink before Oracle than anything else, and *certainly* not because people decided that the Workbench was not very good so they should go off and use a different O/R product that did not have any UI at all. If you have a chance and a real interest in knowing the facts then pull me aside at JavaOne and we can talk.

    You are dead wrong on EJB 3.0, though, David. It *is* being modelled after TopLink, as well as Hibernate. We just don't go around saying that EJB 3.0 == TopLink. That is not only bad style but is disrespectful to the others in the expert group that are contributing.
    I'm not arguing with the Runtime exception exception model. But the fact is that out of the box, Toplink failed to throw exceptions back to the application.

    Like I said, TopLink does throw exceptions back to the application. That's the model. Can't say what you were experiencing because I don't know what you were doing.
    Here is a comment added to a class GENERATED by Toplink

    "// ### TopLink Mapping Workbench 9.0.3 generated source code ###"
    Now, considering how the comment pretty clearly says that it was generated by the Workbench, how can you suggest that Toplionk doesn't generate classes
    Looks like you used a feature in the Workbench that *allows* you to generate classes from tables. This is not an "encouraged" or required practice any more than generating the tables from the objects is required. Just a feature that some people like to use to bootstrap themselves with miniml effort. Most self-respecting O/R mappers offer the same thing (would be lame if they didn't ;-). Note that I just didn't want your comment to imply that TopLink uses code gen for persistence because it does not (not that there is anything wrong with that..).
    ... something, that Hibernate definitely doesn't do.

    It doesn't really matter, but FTR Hibernate *does* generate classes. What do you think that cglib, one of the core libraries that Hibernate uses, stands for? ;-)

    -Mike
  39. I'd use TopLink[ Go to top ]

    David, the reasons why TopLink did not completely own the market when Hibernate came along have more to do with the poorly-managed company that used to own TopLink before Oracle than anything else, and *certainly* not because people decided that the Workbench was not very good so they should go off and use a different O/R product that did not have any UI at all. If you have a chance and a real interest in knowing the facts then pull me aside at JavaOne and we can talk.

    I didn't say the Workbench was the casue. I think Toplink was Toplink's worst enemy. I say this as someone who tried to use Toplink, as a user.
    You are dead wrong on EJB 3.0, though, David. It *is* being modelled after TopLink, as well as Hibernate. We just don't go around saying that EJB 3.0 == TopLink. That is not only bad style but is disrespectful to the others in the expert group that are contributing.

    I didn't say that EJB3.0 is Hibernate. I said that it is being modeled after Hibernate. That is the message that I've read on this board from from serveral sources. If you say that this is inaccurate, I welcome the correction. But I'll say the expert group needs to get the message out, because I am hardly the only who seems to think that Hibernate is the major model being used.
    Like I said, TopLink does throw exceptions back to the application. That's the model. Can't say what you were experiencing because I don't know what you were doing.

    Like I said Mike, out of the box, Toplink failed to throw exceptions. I didn't do anything except use a try block. And I'm not the only one who experienced this. In fact, this is the only library I've used that failed to do so. Out of the box, none of the other libraries I used had any problems.

    Just Toplink. Could it be something I'm doing? Sure. But if I have to DO something to get this to work as expected, I'm not interested.
    Looks like you used a feature in the Workbench that *allows* you to generate classes from tables. This is not an "encouraged" or required practice any more than generating the tables from the objects is required. Just a feature that some people like to use to bootstrap themselves with miniml effort. Most self-respecting O/R mappers offer the same thing (would be lame if they didn't ;-). Note that I just didn't want your comment to imply that TopLink uses code gen for persistence because it does not (not that there is anything wrong with that..).

    That's why I said "encourages". Again, from reading the documentation, that is my impression. You are free to disagree. However, Hibernate, IMO, doesn't encourage generation. It, IMO, encourages you to leverage your existing domain model. It's hard to do that with Toplink, with the Toplink specific classes all over the place.
    It doesn't really matter, but FTR Hibernate *does* generate classes. What do you think that cglib, one of the core libraries that Hibernate uses, stands for? ;-)

    I know what tools like Spring and Hibernate use CGLIB for.
  40. I'd use TopLink[ Go to top ]

    If you say that this is inaccurate, I welcome the correction. But I'll say the expert group needs to get the message out, because I am hardly the only who seems to think that Hibernate is the major model being used.

    That is exactly what I was trying to do. Consider yourself corrected. :-)
    That's why I said "encourages". Again, from reading the documentation, that is my impression. You are free to disagree. However, Hibernate, IMO, doesn't encourage generation. It, IMO, encourages you to leverage your existing domain model.

    Since you have allowed me to disagree let me do so. The meet-in-the-middle model has been the primary model for TopLink since the beginning. The class generation features were added in later for ease of use, but are gravy. Not sure how else to phrase this to make you believe me, but this is my last attempt. It's not a big enough deal, I just hate untruths.
    It doesn't really matter, but FTR Hibernate *does* generate classes. What do you think that cglib, one of the core libraries that Hibernate uses, stands for? ;-)

    I know what tools like Spring and Hibernate use CGLIB for.

    Okay, then it might not mean what you think it means because the "code generation library" really is used by Hibernate to generate proxy classes.

    -Mike
  41. Who uses Oracle? :)[ Go to top ]

    I think this is definitely a value-add for Eclipsed-based users that are using Oracle's app server. What I want to know is, since it's built on Eclipse, will it support other app servers other than Oracle? WebSphere, WebLogic, and JBoss? If so, then this is a tremendous contribution by Oracle to the open-source community. If not, then this is only useful for Oracle AS users. Who actually usually Oracle's app server? I feel sorry for whoever does. :)
  42. Who uses Oracle? :) -> Yes Many do[ Go to top ]

    The answer for you question about support for other appservers is yes.

    Check out the faq
    http://www.oracle.com/technology/tech/java/newto/faq_ejbeclipse.html

    raghu
  43. Who uses Oracle? :)[ Go to top ]

    "If not, then this is only useful for Oracle AS users. Who actually usually Oracle's app server? I feel sorry for whoever does. :)"

    Please look at the list of customers who use it. The time will you come you will feel sorry for not using it (:-

    By the way, do you know Oracle Application Server is the only commercial app server with comprehensive EJB 3.0 support.

    If you have not seen this Infoworld review, please look at this
    http://www.infoworld.com/Oracle_Application_Server_10g_Release_2/product_58520.html?view=1&curNodeId=108

    -Debu
  44. Who uses Oracle? :)[ Go to top ]

    We use Oracle AS and are quite satisfied with it. There are some weaknesses but it works. We do not use JDeveloper but Eclipse 3.0.
    The lack of support for Eclipse developers is a little bit frustrating right now. For example, we have decided not to use TopLink because the lack of Eclipse integration. We use Hibernate.
    We just hope Oracle has understood that the Eclipse support can be beneficial for their J2EE products.
    I think Oracle is changing since the Collaxa acquisition. More and more companies want a BPEL process engine but do not like to re-train their developers to a new IDE, they just want Eclipse.
  45. I want to be non-commercial![ Go to top ]

    By the way, do you know Oracle Application Server is the only commercial app server with comprehensive EJB 3.0 support.

    JBoss has EJB 3.0 support too. Did you forget we met at TSS? He he...Or, is your spin that JBoss isn't commercial because it is open source so that you can be a first at something? If that's the case, that you're labeling us as non-commercial, PLEASE TALK TO SUN! We could get the TCK and J2EE License like other "non-commercial entities" for free like GlueC..errr ahh I mean.. Apache and Red H...errr ahh, I mean.. ObjectWeb do.

    Bill
  46. Who uses Oracle? :)[ Go to top ]

    We are happy with it. Yes there are some weaknesses, but what server does not have a pitfal or two. IMO one of the biggest problems with OracleAS has been the lacking of documentation (or just crap docs), but in the last few years it has gotten much better.

    I have been using JDeveloper for many years, and started using Eclipse in the last year. I like them both. Somethings I like better in Eclipse and somethings I like better in JDeveloper. I would guess that at some point in the future Oracle will port all of there JDeveloper features to Eclipse and use it as the base IDE. This would probably be a good move, many people I have talked to don't even look at Oracle AS because they don't like JDeveloper.
  47. Who uses Oracle? :)[ Go to top ]

    I would guess that at some point in the future Oracle will port all of there JDeveloper features to Eclipse and use it as the base IDE. This would probably be a good move, many people I have talked to don't even look at Oracle AS because they don't like JDeveloper.

    I would applaud this move as well, but I have never noticed a very strategic pattern to Oracle's involvement with Eclipse. It appears very tactical and scattered to me, with bits of BPEL here and EJB there.. i have a hard time imagining that they would leave behind all the hard work they have put into jDeveloper. It would be interesting to hear what Oracle has to say on this topic since they are so active on this thread.

    Pieter Humphrey - BEA Systems
  48. RE: Who uses Oracle? :)[ Go to top ]

    There are no plans to drop JDeveloper and adopt Eclipse instead. We believe JDeveloper provide a much more complete development environment than Eclipse currently. If you actually take the time to look at what JDeveloper offers now and in the coming 10.1.3 version I think you'll see what we mean. For example JDeveloper already provides advance JSP and Struts development (both visual and code bases), UML, XML development, and more.
    Things that are just now starting as new project for some future version of Eclipse.

    We also believe that having multiple IDEs out there drives innovation in the Jave IDE space.

    However as the quoted post said, some people have it stuck in their mind that Oracle AS requieres you to use JDeveloper - which is complete nonsense. You can use whatever tool you want with Oracle AS.

    Shay
    JDeveloper team, Oracle
  49. RE: Who uses Oracle? :)[ Go to top ]

    We believe JDeveloper provide a much more complete development environment than Eclipse currently.

    I don't want to teach you about Eclipse, but don't want others reading the thread to be mislead by you either.

    My understanding is that Eclipse is a base IDE and a framework to build add-ons, such as IBM's WSAD (WebSphere Studio Application Developer.

    You statement only gives me the impression that your company Oracle will not wholly embrace Eclipse.

    My prediction is that the popularity of Eclipse will stop JDeveloper from becoming a mainstream Java/J2EE IDE, even if it can stay as a niche for a while.
  50. What is Eclipse[ Go to top ]

    My understanding is that Eclipse is a base IDE and a framework to build add-ons, such as IBM's WSAD (WebSphere Studio Application Developer.

    Correct, but I think this just prove my point.
    Eclipse itself is not complete, you need a bunch of plug-in's to make it into a full IDE.

    So you can go and buy IBM's WSAD for $3,500 (If I'm not mistaken) to get your complete IDE - or you can go and get JDeveloper for $995.

    I think a lot of developers get into Eclipse because of the "shiney free thing" not realizing that they can get a much more complete IDE if they really want to become productive.
  51. What is Eclipse[ Go to top ]

    So you can go and buy IBM's WSAD for $3,500 (If I'm not mistaken) to get your complete IDE - or you can go and get JDeveloper for $995.

    You sales department may decide to price the Eclipse based JDeveloper replacement at $495. You never know :-).
  52. What is Eclipse[ Go to top ]

    So you can go and buy IBM's WSAD for $3,500 (If I'm not mistaken) to get your complete IDE - or you can go and get JDeveloper for $995.
    Your sales department may decide to price the Eclipse based JDeveloper replacement at $495. You never know :-).