advertisement
javaboutique
Search Tips
Articles  |   Tutorials  |   Reviews  |   Tools  |   by Category  |   by Date  |   by Name  |   Submit  |   Source  |   Forums  |  
javaboutique
Browse DevX


Partners & Affiliates











advertisement

tutorials : Using CASTOR for DB Access from STRUTS :

Using JDOMapper tool to generate the CASTOR mapping file

We have defined the java class EmpBean.java already as part of part 2. Here are the steps to generate the mapping file for that:

  • Download JDOMapper from Source Forge Web site.
  • Extract the zip/tar and open jdomapper.bat (or jdomapper.sh). Add the path to your web-inf/classes directory (where you have the EmpBean.class). I added: "D:/STRUTS/Part3/StrutsNetBeansSampleP3/WEB-INF/classes/"
  • run this batch file (or the shell script). It will open the GUI interface.
  • Refer to the screen shot at the JDOMapper web site.
  • Add your class by clicking on project—add class (You can remove the existing default classes by clicking on the delete button at top)
  • Give your complete class name such as "com.openstack.struts.testapp.EmpBean"
  • It will add the class to the left pane. You can double click on the class name to add information such as the database table it belongs to. Similarly at every filed level you can specify the column name and data type. You can leave the rest of the options to default for now.
  • Click on the preview mapping button at the top. It will generate the mapping file. Save it as mapping.xml under your classes directory (where you stored the database.xml file).

Here is how my mapping file looks:

<?xml version="1.0" encoding="UTF-8"?>
<mapping>
  <class auto-complete="false"

name="com.openstack.struts.testapp.EmpBean" access="shared"> <description>Default mapping for class
com.openstack.struts.testapp.EmpBean</description> <map-to table="employee" xml="emp-bean"/> <field required="false" transient="false" direct="false"
name="shortname" type="string" lazy="false"> <sql name="shortname" dirty="check" type="char"
read-only="false"/> <bind-xml node="element" name="shortname"/> </field> <field required="false" transient="false" direct="false"
name="lastname" type="string" lazy="false"> <sql name="lastname" dirty="check" type="char"
read-only="false"/> <bind-xml node="element" name="lastname"/> </field> <field required="false" transient="false" direct="false"
name="firstname" type="string" lazy="false"> <sql name="firstname" dirty="check" type="char"
read-only="false"/> <bind-xml node="element" name="firstname"/> </field> </class> </mapping>
That’s it, we've changed our STRUTS application to use CASTOR JDO for database access. You can compile all the files, and test the JSP Testform.jsp, as discussed in part 2.

Things to consider when using CASTOR with STRUTS

In this article we invoked Castor JDO calls directly from the STRUTS Action class. While one starts thinking about extracting the "common" parts into a separate class, an important point to consider is thread-safety. Because by its very nature a J2EE web application will have concurrent access from multiple client requests. Here I want to demonstrate one easy solution. Please look at the files CastorJDOFactory.java and TestActionHandler.java here.

If you plan to use JNDI and underlying app server for locating the data source; refer to the Castor website for an example on "PostgreSQL 7.3, JNDI and Tomcat".

How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.

 Microsoft Visual Studio 2010 Showcase
 Avaya Developer Showcase
 MSDN Spotlight
 PHP for Windows Showcase
XML error: undefined entity at line 39
advertisement
Receive Articles via our XML/RSS feed
Receive Articles via our XML/RSS feed

JavaBytes
Internet Cyclone
This powerful, easy-to-use, internet optimizer is for Windows 95, 98, ME, NT, 2000 and XP. It's designed to automatically optimize your Windows settings, boosting your Internet connection up to 200%.

Windows 7: From Beta to Final Code in One Year
Google Shows Off Chrome OS, Releases Source
Microsoft Shows Off Silverlight 4, IE9 Plans
Metasploit Expands Vulnerability Test Framework
HyperCard Reborn?
Fedora 12 Takes Aim at Linux Networking
Top Supercomputer Nearly Doubles in Speed
Fedora 12 Linux Tackles Virtualization
Apple Gives iPhone Developers App Status Tracker
Novell Sets OpenSUSE 11.2 Free

Creating Custom Export Filters for StarOffice with XSLT
WPF Wonders: Using DataTemplates
Crystal Reports Family Offers Options for Developers
Avaya Aura Session Manager video
Avaya Aura Overview video
Exploring HTML 5's Audio/Video Multimedia Support
Overriding Virtual Functions? Use C++0x Attributes to Avoid Bugs.
Understanding the Cloud Computing Security Vulnerabilities
Cisco and IBM Target a Greener World
Upgrade to Visual Studio 2010 with the Ultimate Offer

Advertising Info  |   Member Services  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs