Hi Yibing,
I don't believe there are any conflicts between the two frameworks. There is some 
overlap in regards to the presentation tier e.g. BC4J includes a set of JSP Tag 
libraries that enable you to easily access the BC4J tier. However, if you look at the 
examples that JDeveloper generates, you'll see that BC4J's Controller (of MVC) is 
"hard coded" into the pages, and  some generated scriptlets - further coupling the 
model, controller and view. You might be able to use the Struts framework specifically 
for it's Controller (avoiding Struts' ActionForms) and leverage BC4J's Tag Libraries 
for everything else, but I believe there's a better design.

It's difficult to compare the two frameworks, since BC4J covers a much broader range 
of enterprise issues such as O/R mapping, transactions and distributed computing. 
These areas are BC4J's major strengths. In regard to distributed computing, BC4J is 
"tier independent", so you could deploy BC4J's ApplicationModule (your app) to a 
Servlet Container, as a stand-alone Java application, or into an EJB Container 
(wrapped as a Session Bean). In regard to transactions, the framework will handle very 
complicated caching algorithms, and can be configured to handle transactions in a 
number of different ways depending on your requirements e.g. no locking, optimistic 
locking, and pessimistic locking. In short, BC4J is a very complicated, but very 
powerful framework for handling business logic.

On the other hand, Struts is a simple, light-weight implementation of the MVC design 
pattern - specifically for the Servlet piece of the J2EE specification. In fact, a 
much closer comparison could be made with Oracle's new MVC framework called UIX which 
is remarkably similar to Struts, but unlike Struts the View part (of the MVC) is 
de-coupled to allow either JSPs or XSLT/XML. Note: Currently, Struts is heavily 
coupled with JSPs, but there are a number of open-source groups which have implemented 
(or are implementing) different presentation technologies e.g. Velocity templates.

In short, if I were to use both Struts and BC4J together, I would leverage each for 
it's strengths i.e. use Business Components for Java (BC4J) for handling business 
logic, and use Struts for handling the presentation tier e.g.

<<Presentation Tier>>         <<Business Tier>>          <<Database Tier>>
  Servlet Container          Servlet/EJB Container        Oracle Database
---------------------       -----------------------     ----------------------  
   Struts (MVC)                BC4J (MC)                Persistent Data (M)


Simply map BC4J's Views to your ActionForms (UI JavaBeans), or have BC4J return your 
data as XML (it's built into the framework) and apply your XSLT.

Cheers,
Gerry

At 04:51 PM 05/06/2002 -0400, Yibing Li wrote:
>Folks,
>
>    We are going to develop our web application using Struts as our Web
>Framework
>and JDeveloper as the IDE tool. As Oracle provides a  J2EE framework called
>Business
>Components For Java (BC4J), embedded in Jdeveloper, most likely we will also
>use that. My question to the group is:
>
>    Given Struts is a web framework  and BC4J is a J2EE Framework, are there
>any conflicts
>of using both in the same application? How about even in the same tier ( Web
>tier )?
>If the answer is yes, how can we make them work together.
>
>If you understand both and have used them, please give me a reply.
>
>Thanks a lot.
>
>
>Yibing
>
>
>--
>To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
>For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to