JDX 4.5 OR-Mapper offers OneClickRevelation and Object Caching

Discussions

News: JDX 4.5 OR-Mapper offers OneClickRevelation and Object Caching

  1. Software Tree revs up JDX OR-Mapper with a new 4.5 release. One new feature is OneClickRevelation™, which provides instant and interactive insight into existing data. Object caching provides super-fast access to business objects from high-performance memory cache that can optionally be backed up by a third-party clustered cache like Tangosol Coherence.

    The new OneClickRevelation feature of JDXStudio™ tool unlocks and presents relational data in an intuitive graphical format with just one click of a button. This innovative method enables application developers to quickly and easily view and analyze their data, offering them fresh insights and approaches to harness the power of the data without requiring a single line of programming.

    Object caching improves query performance significantly. By finding objects in the local memory cache, this feature avoids time-consuming trips to the database, resulting in fast response time as well as better throughput. Support for third-party clustered cache (e.g., Coherence from Tangosol) further improves the effectiveness of the JDX cache in a clustered environment.

    Visit http://www.softwaretree.com for a free evaluation download of JDX 4.5.
     
    Press Release

    JDX Highlights


    Best regards,

    -- Damodar Periwal
    Software Tree, Inc.
    Simplify Data Integration
  2. Not impressed[ Go to top ]

    JDX's features interested me enough to take the time to download the trial software. When I went to their site, I had to fill out a long form with all my contact info. Not really found of doling this out to a company I have never heard of, but whatever. I filled this out and I was supposed to get an email with the download URL and username/password. For these type of things, the email usually arrives instantly. I got this email about an hour later. Fine.

    I proceeded to download the software using the username and password. At one point in the installation I got a confusing question about whether I have received a password or not. I clicked "Yes", but the password I received in the email (the same one I used to access the download URL) didn't work. I went back and clicked "No" and everything seemed to work.

    Next, I got to the point where I choose my point of installation. It defaults to \JDX4.5. This is a peculiar default since I am on a Windows box. I assume \ maps to C:. I tried to change this location to C:\Program Files\JDK4.5, but it didn't let me. So I just went with the mysterious default location.

    Lastly, the installation needed to jack with my CLASSPATH variable. Not sure why, but I went ahead and allowed this. I never use this anyway - all my application/scripts define their own classpath. (CLASSPATH env variables have always been a nightmare for me).

    Install complete (finally!). I went to my desktop and clicked the shortcut icon. Instead of the app, I got Window's confused flashlight icon, meaning the shortcut is bad. Turns out that \ maps to my D: drive, not my C: drive. However, the install program didn't figure this out and the shortcut maps to C:.

    So I found the .exe myself and fired it up. Then I got an error message saying it can't find the expiry date for the eval version license. Huh? Mind you, this error message was in a Swing dialog box and the message itself was a mile long. However, the message never breaks, so the box is to wide to fit in on my screen!

    I could not find the "Add or Remove Programs" tool fast enough. So, how does JDX4.5 compare to other ORM tools? How the hell should I know. It is clearly amateur hour over there, so I sure as hell won't waste my time evaluating the software when it takes an act a God to even get it installed.

    Just one man's (frustrating) experience.

    Ryan
  3. JDX installation[ Go to top ]

    Sorry you found the installation confusing. The download password is different than the installation password. The installation password is also provided in the email we sent you. The "No" answer to password is typically used when JDX is shipped in a third party CD. So we let the installation proceed but ask the user to get an expiry date from Software Tree before using the Software. That's why you get the error when you tried to run JDXStudio.

    Under the installation directory, there is an uninstaller program in _unist directory.

    JDX installation modifies the SYSTEM or USER CLASSPATH environment variable automatically so that rest of the scripts and programs don't need to make this change every time.

    So, I suggest that you re-install JDX with the password we supplied you and mention C:\JDX45 or D:\JDX45 explicitly for the destination.

    We will try to further improve installation process. Thanks for your feedback.

    -- Damodar

    Software Tree, Inc.
  4. JDX installation[ Go to top ]

    JDX installation modifies the SYSTEM or USER CLASSPATH environment variable automatically so that rest of the scripts and programs don't need to make this change every time.
    That is exatly what it must NOT do!
    Reliance on win CLASSPATH variable is sure road to hell.
  5. JDX installation[ Go to top ]

    JDX installation modifies the SYSTEM or USER CLASSPATH environment variable automatically so that rest of the scripts and programs don't need to make this change every time.
    That is exatly what it must NOT do!Reliance on win CLASSPATH variable is sure road to hell.
    Interesting. Many users suggested us to do the JDX related CLASSPATH settings for them during installation. Of course, you can always change or override those settings.
  6. JDX installation[ Go to top ]

    JDX installation modifies the SYSTEM or USER CLASSPATH environment variable automatically so that rest of the scripts and programs don't need to make this change every time.
    That is exatly what it must NOT do!Reliance on win CLASSPATH variable is sure road to hell.
    Interesting. Many users suggested us to do the JDX related CLASSPATH settings for them during installation. Of course, you can always change or override those settings.
    Well, just imagine that all java applications will try to do the same:
    - CP will be ridiculously long
    - somebody will sure put some incompatible (early/latest) version of a library that you use too before yours;
  7. JDX installation[ Go to top ]

    Well, just imagine that all java applications will try to do the same:- CP will be ridiculously long - somebody will sure put some incompatible (early/latest) version of a library that you use too before yours;
    Good points. I think that CLASSPATH and class loaders are two of the most intriguing aspects of the Java platform. I have also struggled many times for many hours getting the CLASSPATH and other environment variables straight with many well known IDEs and application servers with or without JDX.

    JDX typically works as a class library with an application and requires JDBC libraries and the business classes in the CLASSPATH. JDX can be used within different IDEs, web servers, application servers, and standalone programs. The JDXStudio GUI tool can be invoked from an IDE like JBuilder; or it can also be invoked from the command line as well as from a desktop icon. Each of these environments typically has its own specific way of setting/getting the CLASSPATH. Sometimes, JDX libraries have to be copied to certain server or IDE specific directory for things to work properly. In addition to documenting how to configure JDX and JDBC libraries for different environments, we have also tried to automate some of these tasks during installation or within ant scripts.

    There is always a tradeoff between the ease of getting the default settings to make most of things work out of the box and the inconvenience of carefully reading the manual and readme files to do those settings manually. I don’t yet see an easy and perfect solution, which can cover all the cases for every customer situation although we are always trying to make improvements. I believe that it should not take much long to understand the CLASSPATH requirements for using JDX. Thanks for your feedback.

    -- Damodar
  8. Not impressed[ Go to top ]

    In spite of all thee install piques, the product is real good. It was very easy to use the tool and the libraries. In fat, I would venture to say, it made the life Developer too easy.
    Venkat
  9. Hi Damodar,

    Congratulations on the release!

    Out of curiousity (in light of the other thread on Oracle) will we see a Torpedo submission? Have your engineers had a chance to look at the Torpedo tests? Any comments?

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Shared Memories for J2EE Clusters
  10. Thanks Cameron.
    Out of curiousity (in light of the other thread on Oracle) will we see a Torpedo submission? Have your engineers had a chance to look at the Torpedo tests? Any comments?Peace,Cameron PurdyTangosol, Inc.Coherence: Shared Memories for J2EE Clusters
    Now that JDX 4.5 release is done, we do want to look at TORPEDO more closely in the next few weeks. I hope that we don't run into some weird installation problems though:)

    As mentioned by many others, the number of SQL statements may not be an adequate measure for performance or efficiency of an OR-Mapping engine. For example, pushing big joins at the database level may decrease the number of SQL statements but can possibly burden the database server with much more load than the situation where the OR-Mapping engine issues multiple SQL statements with precise predicates and does the joins of a few resulting records internally. This can not only affect the response time but also the throughput of the system.

    However, I do appreciate the efforts that have gone into creating TORPEDO as it is not that straightforward to create an easy-to-understand and portable benchmark with good documentation. Hope it will grow to measure actual performance and throughput also. I would like to see the dependency on an app server removed in future to make it easy to configure and run the benchmark.

    -- Damodar
    Software Tree, Inc.
    Simplify Data Integration
  11. I wanted to add a comment from an experienced JDX user. No, the installer isn't elegant. But this is a good product. My company, Darden Solutions, www.dardensolutions.com, has been making and selling commercial software that uses JDX for a couple of years now. It is quite up to the job of providing the data access for a medium-sized J2EE application. Through a beta testing agreement with The Software Tree, we were able to provide testing and feedback to Damodar Periwal, who was very responsive to some feature requests to make JDX integrate more easily in a J2EE environment. I usually upgrade our production builds with the latest JDX release. We have never had a performance problem attributed to JDX, even before the new caching feature in the 4.5 release. I added the caching to our application immediately, because it was so simple to do. I cannot speak to the visual tools in the JDX package, because I've never used them. I started with JDX before those were available, and I've never felt the need for them. We streamline our development with an in-house code-generator that simultaneously writes the Java source code for the data objects (value objects) that JDX uses, as well as the JDX maps. The data access portion of our J2EE architecture is the least painful part of it, compared to the business rules, web and Swing GUI design, and it's largely due to JDX.

    Richard Brewster
    Senior Java Developer
    Darden Solutions
  12. I can not understand how you can sell tool using this silly marketing material, "easy of use" and 30-50% of saved development cost. Are you selling this tool for lames ?
  13. Great observation. I was always suspicious of our marketing department. Now I can blame it on them. Poor installer person would feel so relieved:-) Thank you.

    -- Damodar
  14. Hi Damodar,
     
    Congratulations!! to Software Tree on releasing the new version of JDX. I am very impressed by the product's capability which offers great features in a tiny foot print and at comparatively good speed.
     
    The OneClickRevelation feature is a great one ... I feel that it is really going to help a lot of developers by enabling them to view the data and tables without writing a single line of code.
     
    One question....can you provide the entire list of supported databases? One feedback .... maybe you can include some more examples and usage scenarios.
     
    Ashish Srivastava
  15. Thanks Ashish. We are really excited about OneClickRevelation. We believe that the object-oriented insight into the good, the bad, and the ugly of your data can be quite enlightening in terms of understanding and then harnessing the power of that data. OneClickRevelation makes OR-Mapping approachable, understandable, and dependable.

    JDX supports all the major databases including Oracle, DB2, SQL Server, Sybase, MySQL, Interbase, JDataStore, Postgres, Pointbase, MS Access, and Cloudscape. In fact, any JDBC compliant database can potentially be used with JDX by using a properties file to override default column types. We would soon be adding native support for Daffodil database. The entire list of supported databases is provided in the JDX user manual.

    Thanks for your feedback on example programs. JDX comes with more than 10 example directories including sample JSP and Servlet applications. JDXPetStore shows a detailed example of porting the Java Pet Store application that uses JDX for POJO persistence instead of using CMP for EJB entity beans. JDX also ships with STORM benchmark. If you like to see any particular kind of example or usage scenario, please send me an email.

    -- Damodar