Hi,
I have recently found OFBiz and it seems very interesting. Since I am an experienced J2EE developer I want to package the application into an EAR containing multiple WAR files to be J2EE compliant (e.g. deploy the application on different application servers). Is this possible or is OFBiz very much coupled to the bundled Tomcat? How can I build this in the easiest way? Why doesn't the OFBiz project have this approach as default, with separate web modules and EAR project? If the OFBiz project wants to provide a "extract-and-run" package it could be a solution to have a build script that takes the modules (above) and a runtime env. (e.g. Tomcat and Derby DB) and pack them together. Best Regards Joacim Jarkeborn Enterprise IT Architect _______________________________________________ Users mailing list [hidden email] http://lists.ofbiz.org/mailman/listinfo/users |
Joacim, It is certainly possible to deploy OFBiz inside other containers, rather than having it run using the OFBiz loader and container feature (which starts embedded servlet container, transaction manager, connection pool, JNDI server, and so on). The reason we have it running this way by default is for ease of use, especially for people just getting started with it. It is very important that OFBiz be able to run easily and reliably out of the box, with not potential configuration snafus to get in the way, there are plenty of other things that make enterprise apps difficult... With this method you can download an OFBiz build, unzip it, and as long as you have a 1.4 service J2SDK installed just run it as-is. This is a big deal to lower the bar for people just getting going with it, many of whom wouldn't even know what an EAR or WAR is, let alone how to deploy or effectively use them. Even for running in external app servers (see the README in the appservers component, in the framework/appservers directory) we prefer to run in an "exploded" directory structure rather than in an ear or war file. This makes development much easier, and even for deployment allows for one less step in deployment and maintenance. It may _seem_ nice to have a single file to deal with, but things aren't so convenient in reality and treating it this way can makes things more difficult instead of easier when maintaining a server. Still, yes, it is possible to deploy OFBiz using EAR and WAR files, but for certain things like class loading in the proper way (to allow for a shared cache infrastructure and such) it generally requires proprietary extensions as the EAR and WAR standards are _not_ meant to handle deployment of these sorts of resources, simple as they may be... There are class loading issues and startup initialization issues that the EAR standard simply doesn't address. We are actually working on moving away from using embedded J2EE tools and toward running inside a container. Finding a good container that we can distribute with OFBiz has been an issue because of licensing reasons (especially now that we are moving toward the ASF), but with Geronimo now in a stable release, that will become our default. We are going to try and use standard stuff to do everything we need, probably including the RAR and JMX "standards" in addition of course to deploying webapps and using the transaction manager and such through JNDI. BTW, OFBiz as-is really isn't highly coupled to Tomcat. We have container and configuration wrappers for Jetty, and similar things could be written for any servlet container that supports running and configuration through an API (ie in an "embedded" mode). And if you don't want to use our startup class, then you can deploy it within other app servers as mentioned above. -David On Feb 24, 2006, at 7:49 AM, Joacim J wrote: > Hi, > > I have recently found OFBiz and it seems very interesting. Since I > am an experienced J2EE developer I want to package the application > into an EAR containing multiple WAR files to be J2EE compliant > (e.g. deploy the application on different application servers). > > Is this possible or is OFBiz very much coupled to the bundled Tomcat? > How can I build this in the easiest way? > Why doesn't the OFBiz project have this approach as default, with > separate web modules and EAR project? > > If the OFBiz project wants to provide a "extract-and-run" package > it could be a solution to have a build script that takes the > modules (above) and a runtime env. (e.g. Tomcat and Derby DB) and > pack them together. > > Best Regards > Joacim Jarkeborn > Enterprise IT Architect > > > _______________________________________________ > Users mailing list > [hidden email] > http://lists.ofbiz.org/mailman/listinfo/users _______________________________________________ Users mailing list [hidden email] http://lists.ofbiz.org/mailman/listinfo/users |
David,
Thanks for your reply and I have put some comments inline. 2006/2/25, David E. Jones <[hidden email]>:
I agree that it's important to let fresh people try OFBiz ASAP without need to mess around with setup of an container, datasources etc. BUT I also it is a bit sad that you only have that approach. Instead I think it would have been much better to have the J2EE modules setup in a standardized way after a SVN checkout (without a container) and beside of that have a pre-configured runtime environment also in subversion. The advanced users could use the modules in their container and fresh starters runs a ant script that builds a deployed runtime environment (as it is today) and that could start that. This would add, in my opinion, more flexibility. At my work, we have problems with vendors that bundles application and infrastructure together, since we are using IBM WebSphere at the enterprise level and can not setup small Tomcat instances. We must have as strict enterprise environment as possible due to support, monitoring, scalability,...etc Even for running in external app servers (see the README in the Well, I can not really understand that. I assume that you are using Eclipse and in that environment you can have servers configured with start/stop/restart/debug/deployment/... and it would add the same "exploded" behaviour as in your case. Nowdays when Geronimo and it's Eclipse plugin have been released it makes it even more complete ;-) Still, yes, it is possible to deploy OFBiz using EAR and WAR files, Yes, I know that the J2EE standard are not that good in every case ( e.g. limitations in sharing of session objects between web modules, class loading hiearchys). But I feel that it is not good to modify the standardized runtime environment (and break the compliance). We have built classloader helpers (in my company's J2EE framework) that makes the classloading working in our framework. We are actually working on moving away from using embedded J2EE tools Sounds very good!! BTW, OFBiz as-is really isn't highly coupled to Tomcat. We have I will take a closer look at OFBiz. Best Regards Joacim Jarkeborn -David _______________________________________________ Users mailing list [hidden email] http://lists.ofbiz.org/mailman/listinfo/users |
On Feb 26, 2006, at 3:31 PM, Joacim J wrote: > I agree that it's important to let fresh people try OFBiz ASAP > without need to mess around with setup of an container, datasources > etc. BUT I also it is a bit sad that you only have that approach. > Instead I think it would have been much better to have the J2EE > modules setup in a standardized way after a SVN checkout (without a > container) and beside of that have a pre-configured runtime > environment also in subversion. The advanced users could use the > modules in their container and fresh starters runs a ant script > that builds a deployed runtime environment (as it is today) and > that could start that. > This would add, in my opinion, more flexibility. In a community-driven project like OFBiz this sort of thing happens when someone cares enough about it to create it and contribute it, or to sponsor the development of it... That hasn't happened yet, but if it is a big deal to you then the door is wide open... ;) > At my work, we have problems with vendors that bundles application > and infrastructure together, since we are using IBM WebSphere at > the enterprise level and can not setup small Tomcat instances. We > must have as strict enterprise environment as possible due to > support, monitoring, scalability,...etc This is a common need, ie to run in an existing infrastructure. I haven't worked with any WebSphere deployments, but some WebLogic and Orion deployments (which is why we have "getting started" configs for those). This is certainly possible, and if you are very familiar with your app server then deploying OFBiz in it based on the stuff in the appservers component and the general documentation on config files it is really pretty easy. -David _______________________________________________ Users mailing list [hidden email] http://lists.ofbiz.org/mailman/listinfo/users smime.p7s (3K) Download Attachment |
2006/2/26, David E. Jones <[hidden email]>:
Yes, I can see your point ;-) Right now I am quite full-booked but will get to know OFBiz more and see if I can come up with something. BR Joacim _______________________________________________ Users mailing list [hidden email] http://lists.ofbiz.org/mailman/listinfo/users |
Free forum by Nabble | Edit this page |