From: <chr...@jb...> - 2006-01-03 07:59:49
|
I guess there are 5 primary deployment scenarios in JSE: - scan the whole classpath (default, but very slow) - scan a directory of .class files - scan several directories of .class files - scan a JAR - scan several JARs The "deploy-dir-from-resource" etc. mechanism is actually OK, if it would work as expected, be tested, and if it would have less cryptic names and better documentation. For webapp the WEB-INF/lib and WEB-INF/classes sounds right, but I should have to option to disable one or the other. Frankly, I don't even know what you mean when you say "EJB, AOP, beans" or what a "base beans" configuration file is. Why, as a user, should I care about this distinction and internal implementation detail? --- Playing user: I write EJB session and entity beans and drop them into my classpath directory or package them in a JAR in whatever way I like. Ideally I want to list all these components somewhere, so I can include and exclude stuff that isn't finished during development. But, despite the hundreds of postings about problems on the forum, automagic deployment scanning is what I have to use. Next stop, configuration. I don't want to see or touch more than 1 configuration file where I enter my datasource, and 1 persistence.xml. I don't want to copy a configuration file that I will never edit. If I want JMS I expect that I drop in 1 JAR and maybe 1 more configuration file (although defaults should be sensible). I expect that the configuration files have names that make sense to me immediately. I want to start the server with 1 line of code or one option in web.xml. I want to deploy my EJBs with 1 line of code or 1 line in a configuration file, to trigger the right scanner magic and hope for the best. --- Your goal should be to satisfy a stupiduser with these requirements, no distractions. You also know my opinion about the library issue, 40-50 JARs are still about 35 too many. In other words: place yourself in the situation of a user who has to work with this stuff for the first time in his life. He wants to write a few session and entity beans to work with a database. As a rule, everything he does, be it copy a file, edit it, or set a configuration option, has to be done for a very very good reason, and that step has to be explained to him. If you find any step that does not make perfect sense from the perspective of this user, it should be hidden away and not exposed immediately. Every step counts and will forever influence how this user thinks about the friendliness of the software he is working with. Every new term or name he has to learn during that process (AOP, beans, foobar) should be avoided. PS: E-EJB3, MC, and Seam share a lot of configuration options and even duplicate a few things (like the JTA bootstrap) but with slightly different names for properties. These are open JIRA issues that should be resolved at the same time. View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3915240#3915240 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3915240 |