Wednesday, January 23, 2008

Very Impartant Java Links...

http://java.sun.com/j2ee/1.4/docs/tutorial/doc/EJBConcepts3.html

http://java.boot.by/ibm-287/ch05.html

http://www.allapplabs.com/glossary/idempotent.htm

http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

http://www.javacamp.org/scwcd/httpservlet.html

https://java-net.dev.java.net/

http://java.sun.com/j2ee/1.3/docs/tutorial/doc/

http://www.javacoffeebreak.com/articles/toptenerrors.html

http://faq.javaranch.com/view?ScjpFaq

http://struts.apache.org/1.x/struts-extras/index.html

http://www.laliluna.de/first-steps-with-struts-free-tools-en.html

http://www.myeclipseide.com/ContentExpress-display-ceid-16.html

http://www.myeclipseide.com/images/tutorials/Hibernate/Hibernate.html

http://www.myeclipseide.com/images/tutorials/StrutsTutorial.htm

http://www.myeclipseide.com/images/tutorials/webprojectdemo.htm

http://www.myeclipseide.com/images/tutorials/Struts_Dyna.html

http://www.myeclipseide.com/images/tutorials/Struts_Dispatch.html

http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/DEA2eIX.html



http://ga.the-free-downloads.net/



http://www.javacoffeebreak.com/articles/toptenerrors.html

http://faq.javaranch.com/view?ScjpFaq



http://struts.apache.org/1.x/struts-extras/index.html



http://www.laliluna.de/first-steps-with-struts-free-tools-en.html



http://www.myeclipseide.com/ContentExpress-display-ceid-16.html



demo hibernate with myeclipseide: http://www.myeclipseide.com/images/tutorials/Hibernate/Hibernate.html



demo struts with myeclipseide: http://www.myeclipseide.com/images/tutorials/StrutsTutorial.htm



demo Ejb with myeclipseide:

http://www.myeclipseide.com/images/tutorials/MYSQL_Dbase.html

http://www.myeclipseide.com/images/tutorials/WebLogic_Setup.html

http://www.myeclipseide.com/images/tutorials/Entity_Bean.html

http://www.myeclipseide.com/images/tutorials/Client.html



imp java book : http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/DEA2eIX.html



http://worldebookfair.com/

http://worldebookfair.com/Technical_eBook_Colleciton.htm







http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/deployment/deployment4.html#1035644



http://sourcelabs.com/webinar/public/user/welcome?user[id]=360&key=21996947150ad71d55ab2b0475e4e5c034b3d4b0



www.theserverside.com

http://www.click-now.net



www.planetpdf.com



http://www.kevinboone.com/ejb-transactions.html

http://www.kevinboone.com/PF_ejb-transactions.html

http://www.idevelopment.info/

http://www.idevelopment.info/data/Programming/java/

http://www.idevelopment.info/data/Programming/java/PROGRAMMING_Java_Programming.shtml

http://onjava.com/

www.codeguru.com

http://www.developer.com/java/
http://www.dhtmlgoodies.com/index.html?page=ajax
http://www.dhtmlgoodies.com/index.html
http://www-128.ibm.com/developerworks/java/library/j-ajax1/index.html
http://www-128.ibm.com/developerworks/java/library/j-ajax2/
http://www.unwieldy.net/ajaxim/
http://www.ajaxmatters.com/r/resources?id=17
http://developer.mozilla.org/en/docs/AJAX:Getting_Started
https://ajax4jsf.dev.java.net/nonav/ajax/ajax-jsf/download.html
http://ajaxanywhere.sourceforge.net/
http://www.ajaxdna.com/

http://ajaxtags.sourceforge.net/quickstart.html
http://www.aptana.com/
https://blueprints.dev.java.net/ajax-faq.html
http://www-128.ibm.com/developerworks/views/web/libraryview.jsp?search_by=Mastering+Ajax
http://an9.org/ddq/
http://getahead.ltd.uk/dwr/
https://dwr.dev.java.net/
http://www.dynamicdrive.com/dynamicindex17/ajaxtabscontent/index.htm
http://dojo.jot.com/FAQ
http://www.fjax.net/
http://www.javapassion.com/ajaxcodecamp/#handsonlabdwr
https://bpcatalog.dev.java.net/nonav/ajax/jsf-ajax/frames.html
http://developer.iamalpha.com/dojo-intro
http://www.jamesdam.com/ajax_login/login.html
http://ajaxpatterns.org/Java_Ajax_Frameworks
http://www.firstpartners.net/red-piranha/knowledgebase/AjaxJavaLibraries
http://aspalliance.com/716
http://prototype.conio.net/
http://www.prototypedoc.com/
http://openrico.org/
https://swato.dev.java.net/
http://dojotoolkit.org/docs/

Sample Project Architecture...

project approch is different from project architecure. sorry here i can't insert my own project architecure diagram.

Client tier:

• IE Browser (default) from which the end user will access the application
• The request from the browser will be submitted to the Application Server using HTTP protocol.
• The Response from the presentation layer (struts framework) will be interpreted into html pages to view on the browsers.
• Presentation Tier:

Struts Framework with Tiles
• On Request from the browser, the appropriate Action Class handles the user request. The Action class then connects to the business tier via Service Business Delegate.
• Tiles have been used to create a set of pages with a consistent user interface (e.g.: the same navigation bar, header, footer, etc.).
• Taglibs are used for displaying tabular data (e.g. search results) in a consistent fashion, with pagination.
Business Delegate layer
• Enable the Struts Action classes to be unaware of underlying Session Beans
• Encapsulates the invocation of Service Locator to locate them.

Advantages of Struts
‘Centralized File-Based Configuration’, i.e. rather than hard-coding information into Java programs, many Struts values are represented in XML or property files.
This loose coupling means that many changes can be made without modifying or recompiling Java code.
Validation of the user entry fields in the jsps to be handled by entries in the validation.xml and defining validation rules in validator-rules.xml.
Internationalization of the static components of the screen as field and button labels, titles, error messages etc.
This approach also lets Java and Web developers to focus on their specific tasks (like implementing business logic, presenting certain values to clients.) without needing to know about the overall system layout.

Business Tier

• The Business Delegate identifies the business service class (the Session EJBs) and delegates client request to the EJBs. Internally, the session beans are shallow, and delegate all business logic requests to business logic POJOs, which in turn implement the actual functionality.
• The Business Logic POJOs encapsulate the server side business logic. They do not use Hibernate directly, but instead call upon Data Access Objects (DAO) to work with the model. Parameters and return values are modeled as Data Transfer Objects (DTO), and hence no Hibernate model classes will ever leave the DAO layer. The business logic is made available in the business service class, which increases maintainability and easy debugging, if necessary.

Hibernate/DB Tier
The DAOs encapsulates the database access. For all practical purposes, we are using Hibernate (v 2.1) as the OR mapping layer. This saves development time to write SQLs for executing insert and update statements, find by primary key etc. For each value object that directly or compositely represent a table in the database, we have Hibernate mapping files.
For some complex data retrieval, however we will be using raw SQLs (independent of database) from the DAOs and populate the Value Object POJOs. In those specific cases, the DAOs will be having direct access to the Databases using the available connection. The connection properties of the ‘DB Manager’, holding the data sources, direct the request to the appropriate database.

Issues that may rise of Hibernate
• Hibernate no longer supports dynamic proxies
• The Hibernate has issues using Microsoft's driver especially when using SqlServer2000. It appears that the failures are due to some strange handling of dates.
• Hibernate has issues with Informix Databases due to the way JDBC implementation is done in Informix.

keeps smiling and mailing

bora_srinivasarao@yahoo.co.in
Hyderabad

"HELP EVER HURT NEVER"&"IMPOSSIBLE AS POSSIBLE"

java : http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/DEA2eIX.html

Is Tomcat an app server?

Confusion over whether Tomcat is an application server tends to result in heated discussion among Java developers -- some claiming it absolutely is and some that it definitely is not. In truth, Tomcat often is used as an app server, and for some scenarios it is perfectly suited to that role. For developers using Tomcat as an application server, it makes sense to classify it as such, regardless of formal definition.

In this article I tackle the question of whether Tomcat is an application server. I start by explaining the distinctions between app servers, Web servers, and Java EE containers, and then look at some scenarios where a Web server like Tomcat could be used appropriately as an app server. I show a scaled architecture, starting with the sort of lightweight implementation where Tomcat shines, and concluding with a complex service-oriented architecture, where you would be better off with a full-fledged Java EE application server...

What is the Differnence b/w Application Server and Web Server?

"App server, Web server: What's the difference?" Java Q&A author Tony Sintes summarized the distinction as follows:

"A Web server exclusively handles HTTP requests, whereas an application server serves business logic to application programs through any number of protocols, including HTTP [...] While a Web server mainly deals with sending HTML for display in a Web browser, an application server provides access to business logic for use by client application programs. The application program can use this logic just as it would call a method on an object (or a function in the procedural world).

Such application server clients can include GUIs (graphical user interface) running on a PC, a Web server, or even other application servers. The information traveling back and forth between an application server and its client is not restricted to simple display markup. Instead, the information is program logic. Since the logic takes the form of data and method calls and not static HTML, the client can employ the exposed business logic however it wants.

In most cases, the server exposes this business logic through a component API, such as the EJB component model found on J2EE application servers. Moreover, the application server manages its own resources. Such gate-keeping duties include security, transaction processing, resource pooling, and messaging. Like a Web server, an application server may also employ various scalability and fault-tolerance techniques."