Re: [Mav-user] Can't get dispatcher to work
Well this is indeed a blast from the past! You seem to be missing jdom.jar from your classpath as well. There will be a version in your maverick distribution, or you can find the latest version here: http://www.jdom.org/ Also, sometimes you can have class path issues if you have duplicate jars with different versions in your class path, so I'd check for that as well. Finally, Tomcat can be funky when it comes to where you put these jars, so you may have to play around with putting it (only) in WEB-INF/lib or one of the Tomcat shared directories. Are you actually contemplating Maverick or just doing research? Maverick is pretty dated, especially in an ajax-driven world. Post-Maverick I ended up developing http://tagonist.tigris.org/, which does most of what I needed from Maverick but in 500 lines of code... and now I use http://code.google.com/p/htmleasy/ + Cambridge for basic html rendering, although that tends to be fairly simple given that most data is rendered by javascript/ajax. And my 2c on that is that for years I've used Wicket (and in fact are one of the core contributors) but nowadays stay clear of Java web frameworks altogether. I tend to use just plain HTTP services using Jersey/ JAXRS and JavaScript directly (e.g. using jQuery, though I might throw in a framework like Angular). The only thing left then is something to dispatch requests and handle security. I use Wicket for that, just because I know it well, though you could just use a servlet filter for it or a light framework like HTMLEasy, which seems like an excellent choice. Good luck, Eelco -- Try before you buy = See our experts in action! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-dev2 ___ %(real_name)s mailing list %(real_name)s@%(host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/
Re: [Mav-user] NoClassDefFoundError and I have all the right jar files
Are there more logs you can share? Anything that points to what class it is trying to locate? I don't work with Tomcat often, but remember that sometimes things get scattered throughout multiple logs. Eelco On Thu, Apr 22, 2010 at 8:24 AM, Angela Day akc...@yahoo.com wrote: Thanks for the idea. I tried lowering the jdom, with no success. Any other suggestions would be really appreciated. Thanks, Angela Day National Autism Association of Central Texas http://www.naacentraltexas.org -- *From:* Angela Day akc...@yahoo.com *To:* mav-user@lists.sourceforge.net *Sent:* Wed, April 21, 2010 3:40:44 PM *Subject:* NoClassDefFoundError and I have all the right jar files I am getting the following error when I try to run my application javax.servlet.ServletException: Servlet.init() for servlet dispatcher threw exception org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873) org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) org.apache.tomcat.util.net http://org.apache.tomcat.util.net.PoolTcpEndpoint.pro.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) org.apache.tomcat.util.net http://org.apache.tomcat.util.net.LeaderFollowerWorkerThread.ru.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) java.lang.Thread.run(Thread.java:595) *root cause* java.lang.NoClassDefFoundError org.infohazard.maverick.flow.Loader.loadDocument(Loader.java:140) org.infohazard.maverick.flow.Loader.init(Loader.java:88) org.infohazard.maverick.Dispatcher.reloadConfig(Dispatcher.java:239) tdhca.maverick.Dispatcher.reloadConfig(Dispatcher.java:287) org.infohazard.maverick.Dispatcher.init(Dispatcher.java:159) tdhca.maverick.Dispatcher.init(Dispatcher.java:309) javax.servlet.GenericServlet.init(GenericServlet.java:212) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873) org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) java.lang.Thread.run(Thread.java:595) I am running: Torque 3.3 Java 1.5 Maverick 2.2.4 Ant 1.8.0 Velocity 1.3 Tomcat 5.5.28 Eclipse 3.5.1 JSP 1.2 JDOM 1.1.1 commonts_logging 1.1 jdom 1.1.1 commons-beanutils 1.7.0 commons-collections 3.2 Any help you can give would be greatly appreciated! Thanks, Angela Day National Autism Association of Central Texas http://www.naacentraltexas.org -- ___ %(real_name)s mailing list %(real_name)s...@%(host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/ -- ___ %(real_name)s mailing list %(real_name)s...@%(host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/
Re: [Mav-user] NoClassDefFoundError and I have all the right jar files
Any chance you might have another maverick jar in your class path somehow? Eelco -- ___ %(real_name)s mailing list %(real_name)s...@%(host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/
Re: [Mav-user] Maverick activity and support
It's hardly active, but the source code is stable and quite accessible, and there are still a few people monitoring this list. Maverick is a nice pick if you like it's composition pattern (using transforms, which is kind of the inverse of, say, Struts' tiles), and I think the code is well organized and easy to follow and extend. Also consider looking at Stripes and Click if you want to go the web MVC route. Personally, I think that if you're considering developing your web interface in JS, you might be better off just developing your backend as services, maybe using something like Apache CXF or Restlet for instance. Unless your site is very complicated and you want to use a web MVC framework to structure the flow through your site. My 2c, Eelco On Wed, Oct 15, 2008 at 2:11 PM, Mario Rodriguez [EMAIL PROTECTED] wrote: I'm looking for a simple MVC for Java/ExtJS apps and I'm wondering if Maverick is still an active project, looks like no updates have been added in the last years. thanks -- Mario Rodriguez - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ %(real_name)s mailing list %(real_name)[EMAIL PROTECTED](host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/ - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ %(real_name)s mailing list %(real_name)[EMAIL PROTECTED](host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/
Re: [Mav-user] Setting up environment in eclipse for Maverick and velocity
You don't really need a specific plugin to get that working; it's just a matter of configuring Maverick as is described here: http://mav.sourceforge.net/maverick-manual.html#N10167 You can get separate plugins for Velocity in Eclipse (http://veloedit.sourceforge.net/ or http://velocitywebedit.sourceforge.net/). Eelco On Wed, Oct 15, 2008 at 7:50 PM, chandan ray [EMAIL PROTECTED] wrote: Hi, I need to set up environment in eclipse to develop an application using maverick and velocity. I tried using maverick plugin for eclipse (mavplug 0.3.0), but I am not able to work with it. Could any one provide some solution for it. Thanking you in advance Chandan - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ %(real_name)s mailing list %(real_name)[EMAIL PROTECTED](host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/ - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ %(real_name)s mailing list %(real_name)[EMAIL PROTECTED](host_name)s %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s Archives are available at http://www.mail-archive.com/mav-user%40lists.sourceforge.net/
Re: [Mav-user] Hi i am getting java.lang.NoClassDefFoundError while running maverick
Do you have jdom in your class path (WEB-INF/lib)? Eelco On 2/24/06, V Reddy [EMAIL PROTECTED] wrote: HI all I am using Tomcat5.0,eclipse.And I am trying run maverick example its giving following error.If some one will give solution for this it will be great. Thanks Regards Venkat. type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException: Servlet.init() for servlet dispatcher threw exception org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:670) org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:637) org.apache.jsp.default_jsp._jspService(default_jsp.java:43) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) root cause java.lang.NoClassDefFoundError org.infohazard.maverick.flow.Loader.loadDocument(Loader.java:147) org.infohazard.maverick.flow.Loader.init(Loader.java:92) org.infohazard.maverick.Dispatcher.reloadConfig(Dispatcher.java:394) org.infohazard.maverick.Dispatcher.init(Dispatcher.java:287) javax.servlet.GenericServlet.init(GenericServlet.java:211) org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:670) org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:637) org.apache.jsp.default_jsp._jspService(default_jsp.java:43) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid0944bid$1720dat1642 [INVALID FOOTER]
Re: [Mav-user] Maverick w/Spring
Is the setting controller-factory which is described at http://mav.sourceforge.net/maverick-manual.html of any use? Eelco On 1/31/06, wally bowles [EMAIL PROTECTED] wrote: Hi Can someone help me figure out how to let Spring be the factory to instantiate the command controller objects within Maverick? I've used a Spring factory before on other projects to inject the collaborators that a java class needs using the Spring config xml file. Can this be done to the Maverick commands? In other words, can the Maverick 'Dispatcher' when it instantiates the 'Loader' class with the commands found in the maverick.xml file call a Spring factory to instantiate the commands instead? The goal is to inject in the class collaborators declared in a config xml file into the commands. Wally __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 [INVALID FOOTER] --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid3432bid#0486dat1642 [INVALID FOOTER]
Re: [Mav-user] Where to find step by step tutorials on Maverick
Here http://mav.sourceforge.net/maverick-manual.html and here http://www.theserverside.com/articles/article.tss?l=Maverick. There is no book to my knowledge, though it is referenced in a couple of books. Eelco On 9/30/05, Lorenzo Jiménez [EMAIL PROTECTED] wrote: Where I can find small step by step tutorials on Maverick? Any book out there? Thanks, Lorenzo Jiménez - Si usted no es el destinatario indicado en este mensaje o responsable como persona de la entrega del mensaje, no debe copiar o reenviar este mensaje, por favor notifique al correo [EMAIL PROTECTED] Para más referencia sobre términos importantes relacionados a este correo visite http://www.nacion.com/disclaimer/index_es2.htm If you are not the addressee indicated in this message (or responsible for delivery of the message to such person), you may not copy or send this message to anyone, please notify to [EMAIL PROTECTED] Click here for important additional terms relating to this e-mail. http://www.nacion.com/disclaimer/index_en2.htm - --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl [INVALID FOOTER] --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl [INVALID FOOTER]
Re: [Mav-user] jar hell with jdom reloaded
Devs, There has been hardly any use of this list. There have been a couple of feature requests/ bug reports though. As it doesn't look like any of the current committers is going to attend them (I am too involved with Wicket to support Maverick). Travis Reeder would to apply a fix for the JDOM dependency (see http://sourceforge.net/mailarchive/forum.php?thread_id=8339347forum_id=1837 as the message I'm replying to didn't come over correctly). I'm +1 for giving him commit rights. Can we have a vote please? Eelco On 9/29/05, Travis Reeder [EMAIL PROTECTED] wrote: --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl [INVALID FOOTER]
Re: [Mav-user] Help - falling into 'jar hell' with Mav and JDOM
No objections here. Regards, Eelco What are the thoughts of updating the jdom dependency of maverick? If there are no objections I will do the updates and do a 2.2.4 release. -- Mike --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/ [INVALID FOOTER]
Re: [Mav-user] Need recommendation as to what controller to use..
Yiannis, You can use FormBeanCtrlBase for thread safe controllers. It won't solve your problem though, as an instance of this will be created with every request (instead of the session you seem to be looking for). Why not just use an object to hold your questionaire data and keep it in the session? You can use the HttpSession just like you would with Servlets. Btw, though there will be bugsupport for an unlimited time on Baritus, it is not actively being developed as I am working on a new project (which is currently in alpha, but will reach beta in a couple of weeks from now). Session handling etc. is much easier with this project, and it is fully component based. It might take some time to get used to if you are used to web-MVC frameworks (Maverick/ Baritus, Struts, etc.), but if you're not used to the page oriented approach, you'd probably find this project much easier to work with. If you're intested, take a look at Wicket: http://wicket.sourceforge.net Good luck, Eelco Yiannis Mavroukakis wrote: Hello :) Sorry for the dumb question but I am stuck :) I want to create a questionaire and I am wondering what type for controller is should be using. FormBeanUser appeals to me, but the fact that it is not thread-safe is a problem, since I want to persist the questionaire selections (the bean I created) during the session and submit them at the end of it. What is the most suitable controller for the job and are there any examples to guide me along? Thank you for your time, Yiannis. --- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_id=5588alloc_id=12065op=click [INVALID FOOTER]
Re: [Mav-user] Need recommendation as to what controller to use..
LOL Yiannis Mavroukakis wrote: Because I seem to suffer from an obscure form of brain disease, which removes all traces of the existence of the HttpSession object from my memory ,I think it's called d'oh ;) Thank you for that, I will also take a look at your project. Yiannis -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: 10 November 2004 14:15 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Need recommendation as to what controller to use.. Yiannis, You can use FormBeanCtrlBase for thread safe controllers. It won't solve your problem though, as an instance of this will be created with every request (instead of the session you seem to be looking for). Why not just use an object to hold your questionaire data and keep it in the session? You can use the HttpSession just like you would with Servlets. Btw, though there will be bugsupport for an unlimited time on Baritus, it is not actively being developed as I am working on a new project (which is currently in alpha, but will reach beta in a couple of weeks from now). Session handling etc. is much easier with this project, and it is fully component based. It might take some time to get used to if you are used to web-MVC frameworks (Maverick/ Baritus, Struts, etc.), but if you're not used to the page oriented approach, you'd probably find this project much easier to work with. If you're intested, take a look at Wicket: http://wicket.sourceforge.net Good luck, Eelco Yiannis Mavroukakis wrote: Hello :) Sorry for the dumb question but I am stuck :) I want to create a questionaire and I am wondering what type for controller is should be using. FormBeanUser appeals to me, but the fact that it is not thread-safe is a problem, since I want to persist the questionaire selections (the bean I created) during the session and submit them at the end of it. What is the most suitable controller for the job and are there any examples to guide me along? Thank you for your time, Yiannis. --- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_id=5588alloc_id=12065op=click [INVALID FOOTER] This e-mail has been scanned for all viruses by Star Internet. The service is powered by MessageLabs. Note:__ This message is for the named person's use only. It may contain confidential, proprietary or legally privileged information. No confidentiality or privilege is waived or lost by any mistransmission. If you receive this message in error, please immediately delete it and all copies of it from your system, destroy any hard copies of it and notify the sender. You must not, directly or indirectly, use, disclose, distribute, print, or copy any part of this message if you are not the intended recipient. Jaguar Freight Services and any of its subsidiaries each reserve the right to monitor all e-mail communications through its networks. Any views expressed in this message are those of the individual sender, except where the message states otherwise and the sender is authorized to state them to be the views of any such entity. This e-mail has been scanned for all viruses by Star Internet. The service is powered by MessageLabs. --- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_idU88alloc_id065op=click [INVALID FOOTER] --- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_id=5588alloc_id=12065op=click [INVALID FOOTER]
Re: [Mav-user] a new view
Haha, really... what's so wrong about starting another technology? I actually think it is one of the strongest points of the Java communtiy that there are so many. Gives people choice (after all, why should Maverick have been started when there was Struts), and the competition makes open source developpers think harder about their added value in open source space. Eelco - Original Message - From: Joseph Dane [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, August 27, 2004 9:24 PM Subject: Re: [Mav-user] a new view Doug Kirk [EMAIL PROTECTED] writes: Hmmm...I don't want to rain on any parades, but I'm just wondering why you didn't want to use Velocity, as it accomplishes the same thing and it's already written and well-supported? I do use Velocity, and am happy with it in the contexts in which I use it. However, it didn't seem to quite fit here. I wanted the source pages to be plain old HTML, to the greatest extent possible. So consider something like a role-sensitive navigation bar. rather than #if ($user.inRole('admin')) a href=''AdminFunctions/a #end #if ($user.inRole('manager')) a href=''ManagerFunction/a #end ... I wanted a href='' ctl:if='${user.inRole(admin)}'Admin Functions/a ... Also, I wanted to be able to leverage XML tools (XSLT) in interesting ways. If the control elements are expressed in XML, then I could (for example) pass a template containing a looping construct through an appropriate stylesheet (I'm referring here to an offline process) and get a reasonable looking mockup. Another thing: I figured I'd be using XSLT at runtime. Both JSP and vanilla Velocity are what you might call text oriented. Meaning that the results of a template evaluation or JSP page evaluation would have to be reparsed as XML on every request. I wanted to avoid that overhead. Certainly I could have used Velocity. I'm not terribly proud of having increased the number of Java web technologies, and I always figured I could resist the urge when it came upon me. But it turned out I was wrong. -- joe --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click [INVALID FOOTER] --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click [INVALID FOOTER]
Re: [Mav-user] a new view
It sound nice. I use Velocity mostly, and am still very content with it. But, Velocity would not be useful for you as it does not provide you with valid XML source files. Just wondering... what kind of stuff are you doing with these XML input files? Eelco - Original Message - From: Joseph Dane [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, August 27, 2004 8:21 PM Subject: [Mav-user] a new view I recently had reason to develop a new view type for Maverick, and wonder if there might be any interest in it. If so, perhaps I can contribute it back to the project. The problem: I needed a very simple X?HTML template system. It had to be something that, however, complicated under the hood, could be used by junior developers and design people. I also wanted the source pages to be valid XML, so that I could use the various XML tools to edit/process/test the pages. I wanted to avoid JSP's scriptlet syntax. JSTL might work, but I wanted the source pages to be valid XML, so I wanted to avoid stuff like a href=c:out value='...'/ ... /a Basically, I wanted XML source files, with the ability to dynamically evaluate expressions and a some minimal amount of flow control. Looping, for sure. Conditionals, probably. Something to match the minimalist spirit of Maverick itself. Something that might look like this (with some of the namespace stuff cleared away): html body h2Welcome ${user.fullName}/h2 Your order contains the following items: table ctl:for-each items='${order.items}' name='item' trtd${item.productId}/tdtd${item.description}/td/tr /ctl:for-each /table the current time is ${util.dateTime} /body /html looks a bit like JSTL, but is required to be valid XML, unlike JSP+JSTL. I used OGNL for the expression language. The processing model goes like this: the page description (e.g. the above sample) is loaded once at app startup and parsed as a stream of SAX events. The events are recorded, and we do a certain amount of pre-processing, e.g. joining and compiling text nodes. Then, at request time we replay the event stream using a request specific evaluation context that contains things like the current request, the authenticated user, and some utilities. Maverick makes this pretty simple, because we can grab the next transform step in the view handler, and send the replayed SAX events on down the line. This means that any XSTL we might want to perform can be specified in Maverick's config, and will be handled completely by Maverick. Another nice thing about this is that unlike using JSP+XSLT, where the output of the JSP has to be re-parsed on every request, in my system the source is parsed exactly once. The strange thing about all this is that I wasn't able to find anything that quite suited my purpose. So I guess that's one purpose of this message: to see what I may have missed in the sea of Java webapp frameworks. The other purpose is to see if there's any interest in this. If not, then I must have missed something, because I've been quite pleased with the results. If so, then I can see about getting it cleaned up and put out somewhere for the Maverick community to have a look at. -- joe --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click [INVALID FOOTER] --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click [INVALID FOOTER]
RE: [Mav-user] webwork, maverick and 24x7
Most servlet containers support hot-deployments. You should check out the usergroups/ documentation of the servlet containers you are considering for these features. My experience with various servlet containers (like Resin, Jetty, Tomcat, Websphere) is that it works allright if you play by the rules (like that all objects you put in the session are serializable). A pitfall is that some of these containers have (or at least used to have) memory leaks when utilizing the hot deployment features, resulting in performance loss or even VM crashes. And if you are considering building in hot deploy like features yourself, you can also start by looking at how the servlet containers try to accommodate it. Good luck, Eelco Btw mailing list users are usually not very happy with people cross-posting. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Taavi Tiirik Sent: vrijdag 13 augustus 2004 14:06 To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: [Mav-user] webwork, maverick and 24x7 Hi, I have two webapps using Webwork, Maverick, Tomcat 4.1, Hibernate, JSP views (but switching to freemarker soon). These web applications have to be available 7 days a week, 24 hours a day but the problem is they need new features almoust every day. But I am kind of tired of deploying new releases duering night when there is less users. So I am trying to find a best way how to deploy changes into working system. If this is possible at all. Please be so kind and share your experiences. Oh, and I am not so tied to tomcat after all... thank you in advance, taavi --- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 [INVALID FOOTER] --- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 [INVALID FOOTER]
RE: [Mav-user] opt-freemarker
I created Maverick 2.2.3 with Ed's patch. I also created Optional Freemarker; maintenance for this packge should be done by somebody else. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: zaterdag 7 augustus 2004 9:48 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] opt-freemarker Hi Ed, I had a chance to look at your changes; looks good. For the other readers: with the patch that Ed proposes, every document view with a path attribute will be a view with transforms internally, the first transform being the dispatch/ document transform with the given path. His patch makes it possible to have document views without a dispatch transform, functionality needed for his opt-freemarker package. If I mis-understood anything, please correct me... If everyone agrees (please take a look at CVS-HEAD) I can make a new build (v 2.2.3) next week. About the opt-freemarker package... It's great that you took the trouble to implement the friendbook example. As I do not work with Freemarker myself, I do not want to maintain it. But, if you'd like, we could give you write access, and you could maintain that module yourself. So, I hereby vote +1 for write access for Ed Ward. What about the other developers? Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: woensdag 4 augustus 2004 3:05 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] opt-freemarker Hi Eelco, I appreciate you're busy at the moment but have you found time to look at the updates to DocumentView? Ed - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, July 23, 2004 7:27 PM Subject: RE: [Mav-user] opt-freemarker Sounds interesting. I am very busy with other things at the moment though, but I'll try to look at it next week. Cheers, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: donderdag 22 juli 2004 4:22 To: [EMAIL PROTECTED] Subject: [Mav-user] opt-freemarker Hi, I came across a reference to the FreeMarker templating engine a couple of weeks ago whilst reading up on the Spring framework. It looked pretty interesting so I thought I'd have a go at writing an opt-freemarker package. Unlike Velocity though FreeMarker doesn't have a dispatch servlet but I still wanted to utilise the functionality of DocumentView (the setting of the model bean attribute in the scope specified on the document view). DocumentView currently assumes the use of a dispatcher though so I've made a few updates (attached) that allow the document view type to optionally use the existing DocumentTransform class to perform the task of dispatching the supplied document path rather than use an aggregated DispatchedView instance. The updated DocumentView class no longer needs DispatchedView since the dispatch include/forward is handled by the DocumentTransform that's created when the view configuration is loaded. Could you committers have a look at the updates please and let me know what you think? opt-freemarker is currently dependent on them. many thanks, Ed Ward PS. If you'd like to look at the opt-freemarker package, I've placed a copy at http://www.commlock.freeserve.co.uk/opt-freemarker-20040722.zip (632 KB) --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_idG21alloc_id040op=ick [INVALID FOOTER] --- This SF.Net email is sponsored by OSTG. Have you noticed the changes on Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, one more big change to announce. We are now OSTG- Open Source Technology Group. Come see the changes on the new OSTG site. www.ostg.com [INVALID FOOTER] -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: woensdag 4 augustus 2004 3:05 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] opt-freemarker Hi Eelco, I appreciate you're busy at the moment but have you found time to look at the updates to DocumentView? Ed - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, July 23, 2004 7:27 PM Subject: RE: [Mav-user] opt-freemarker Sounds interesting. I am very busy with other things at the moment though, but I'll try to look at it next week. Cheers, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: donderdag 22 juli 2004 4:22 To: [EMAIL PROTECTED] Subject: [Mav-user] opt-freemarker Hi, I came across a reference to the FreeMarker templating engine a couple of weeks ago whilst reading up on the Spring framework. It looked pretty interesting so I thought I'd have a go at writing an opt
RE: [Mav-user] opt-freemarker
Hi Ed, I had a chance to look at your changes; looks good. For the other readers: with the patch that Ed proposes, every document view with a path attribute will be a view with transforms internally, the first transform being the dispatch/ document transform with the given path. His patch makes it possible to have document views without a dispatch transform, functionality needed for his opt-freemarker package. If I mis-understood anything, please correct me... If everyone agrees (please take a look at CVS-HEAD) I can make a new build (v 2.2.3) next week. About the opt-freemarker package... It's great that you took the trouble to implement the friendbook example. As I do not work with Freemarker myself, I do not want to maintain it. But, if you'd like, we could give you write access, and you could maintain that module yourself. So, I hereby vote +1 for write access for Ed Ward. What about the other developers? Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: woensdag 4 augustus 2004 3:05 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] opt-freemarker Hi Eelco, I appreciate you're busy at the moment but have you found time to look at the updates to DocumentView? Ed - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, July 23, 2004 7:27 PM Subject: RE: [Mav-user] opt-freemarker Sounds interesting. I am very busy with other things at the moment though, but I'll try to look at it next week. Cheers, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: donderdag 22 juli 2004 4:22 To: [EMAIL PROTECTED] Subject: [Mav-user] opt-freemarker Hi, I came across a reference to the FreeMarker templating engine a couple of weeks ago whilst reading up on the Spring framework. It looked pretty interesting so I thought I'd have a go at writing an opt-freemarker package. Unlike Velocity though FreeMarker doesn't have a dispatch servlet but I still wanted to utilise the functionality of DocumentView (the setting of the model bean attribute in the scope specified on the document view). DocumentView currently assumes the use of a dispatcher though so I've made a few updates (attached) that allow the document view type to optionally use the existing DocumentTransform class to perform the task of dispatching the supplied document path rather than use an aggregated DispatchedView instance. The updated DocumentView class no longer needs DispatchedView since the dispatch include/forward is handled by the DocumentTransform that's created when the view configuration is loaded. Could you committers have a look at the updates please and let me know what you think? opt-freemarker is currently dependent on them. many thanks, Ed Ward PS. If you'd like to look at the opt-freemarker package, I've placed a copy at http://www.commlock.freeserve.co.uk/opt-freemarker-20040722.zip (632 KB) --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_idG21alloc_id040op=ick [INVALID FOOTER] --- This SF.Net email is sponsored by OSTG. Have you noticed the changes on Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, one more big change to announce. We are now OSTG- Open Source Technology Group. Come see the changes on the new OSTG site. www.ostg.com [INVALID FOOTER] -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: woensdag 4 augustus 2004 3:05 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] opt-freemarker Hi Eelco, I appreciate you're busy at the moment but have you found time to look at the updates to DocumentView? Ed - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, July 23, 2004 7:27 PM Subject: RE: [Mav-user] opt-freemarker Sounds interesting. I am very busy with other things at the moment though, but I'll try to look at it next week. Cheers, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: donderdag 22 juli 2004 4:22 To: [EMAIL PROTECTED] Subject: [Mav-user] opt-freemarker Hi, I came across a reference to the FreeMarker templating engine a couple of weeks ago whilst reading up on the Spring framework. It looked pretty interesting so I thought I'd have a go at writing an opt-freemarker package. Unlike Velocity though FreeMarker doesn't have a dispatch servlet but I still wanted to utilise the functionality of DocumentView (the setting of the model bean attribute in the scope specified on the document view). DocumentView currently assumes the use of a dispatcher though so I've made a few updates (attached) that allow
RE: [Mav-user] opt-freemarker
Sounds interesting. I am very busy with other things at the moment though, but I'll try to look at it next week. Cheers, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ed Ward Sent: donderdag 22 juli 2004 4:22 To: [EMAIL PROTECTED] Subject: [Mav-user] opt-freemarker Hi, I came across a reference to the FreeMarker templating engine a couple of weeks ago whilst reading up on the Spring framework. It looked pretty interesting so I thought I'd have a go at writing an opt-freemarker package. Unlike Velocity though FreeMarker doesn't have a dispatch servlet but I still wanted to utilise the functionality of DocumentView (the setting of the model bean attribute in the scope specified on the document view). DocumentView currently assumes the use of a dispatcher though so I've made a few updates (attached) that allow the document view type to optionally use the existing DocumentTransform class to perform the task of dispatching the supplied document path rather than use an aggregated DispatchedView instance. The updated DocumentView class no longer needs DispatchedView since the dispatch include/forward is handled by the DocumentTransform that's created when the view configuration is loaded. Could you committers have a look at the updates please and let me know what you think? opt-freemarker is currently dependent on them. many thanks, Ed Ward PS. If you'd like to look at the opt-freemarker package, I've placed a copy at http://www.commlock.freeserve.co.uk/opt-freemarker-20040722.zip (632 KB) --- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_idG21alloc_id040op=click [INVALID FOOTER]
RE: [Mav-user] Controller chaining code
Hi, I did not actually follow the discussion back then, but I can tell you that we (me and collegues) use controller chaining very often. It works at least from Maverick 2.2.0 on. Besides the default support that Maverick has for it, I even took controller chaining a step further in the extension project Baritus (http://baritus.sourceforge.net), where you can do stuff like reusing a form in the chain and control whether population is done further down the chain and so forth. It's all Java though; I have no idea how this would work in Maverick.NET. And your question... I don't know where to find the source files, but you can do chaining just like this: command name=cmd1 controller class=MyCtrl2 / view path=myview.vm / /command command name=cmd2 controller class=MyCtrl2 / view path=cmd1.m / !-- this chains cmd2 to cmd1 (or should you say reverse) -- /command Eelco Hillenius -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Cort Schaefer Sent: zaterdag 10 juli 2004 1:31 To: [EMAIL PROTECTED] Subject: [Mav-user] Controller chaining code This post has a patch and talks about some additional source files - does anybody know where I can find them? http://sourceforge.net/mailarchive/message.php?msg_id=3805139 Cort --- This SF.Net email sponsored by Black Hat Briefings Training. Attend Black Hat Briefings Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com [INVALID FOOTER]
RE: [Mav-user] Eclipse plugin
I'll look into making the controller factory pluggable today - if the original authors do not mind? If it can be done without messing up too much code, I will include it in the next release. I'll keep in touch via this list. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Yurii Urazlin Sent: zondag 13 juni 2004 18:05 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] Eclipse plugin If you could change controller (say, add another getXxx method), compile it, and see changes on-the-fly without need to reload anything, then, I think, your productivity could be higher, just like it could be with use of very neat eclipse plug-in. I think that 'reloading' is used here in 2 different senses, because I don't see the way to reload controller classes without custom implementation of ControllerFactory (patch). I mean reloading as it's described here, in chapter 3.1: http://citeseer.ist.psu.edu/liang98dynamic.html BTW, aside from productivity improvements, I also have another application for pluggable controller factory: I'd like to have ability to create controller instances with dynaop. Yuri. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: Sunday, June 13, 2004 3:37 PM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Eclipse plugin [...] Now about the pluggable controller factory. Actually that has been the only functionality in Maverick I found lacking myself. On the other hand I - and you too in this case - could just use the reload command to re-initialise the controllers, so I never realy considered proposing a patch. Eelco - Original Message - From: Yurii Urazlin [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, June 02, 2004 10:59 AM Subject: RE: [Mav-user] Eclipse plugin Greetings, Sorry, but I don't think that it should be in plug-in. 1. With IDEA you can click class name in XML files and it will open its source. Probably, Eclipse itself should provide this functionality? 2. If you use unpacked web-app and disabled caching in XSLTransformFactory, than you do not have to re-deploy anything. You just change it, and it is used. I think that there is sense in using adaptive classloader for throwaways. It would reload controller classes as they change without redeployment. If there was pluggable ControllerFactory, I could provide a patch. Yuri. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Hernandez Sent: Wednesday, June 02, 2004 1:23 AM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Eclipse plugin What about using the config file to help navigate to the controller classes. It would be nice to be able to see your project space in terms of the commands and controllers, and then to navigate to the source files associated with them. Just an idea... Also, if you are using xsl stuff (with domify) it would be great if the tool could pick up the xml transform data at various steps and do local (development) transforms with the xsl sources without having to deploy to the app server. Then you could do front-end presentation testing, html validation and such, in eclipse without having to deploy new version of the application. If this doesn't make sense I write in a little more detail, just let me know. - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] I'm kind of working on an Eclipse plugin for Maverick. After making some contributions for the Jetty Plugin (http://spindle.sourceforge.net) I decided that now is the time to really learn how to write them properly. Right now, the plugin does some pretty printing of the Maverick config file, and displays it's structure in the outline view a little bit smarter than just the XML outline. Does anyone have any good ideas for a useful Maverick plugin (or... are people interested in such a plugin at all?). Eelco --- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149alloc_id=8166op=click [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email
RE: [Mav-user] Eclipse plugin
Ok, that's done. A new release is out now, supporting a pluggable controller factory. Note that one of the other changes for this release is the dependency on Commons Logging instead of Log4J. I also included an example of how to use a custom controller factory in the manual. Have fun! Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: zondag 27 juni 2004 11:28 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] Eclipse plugin I'll look into making the controller factory pluggable today - if the original authors do not mind? If it can be done without messing up too much code, I will include it in the next release. I'll keep in touch via this list. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Yurii Urazlin Sent: zondag 13 juni 2004 18:05 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] Eclipse plugin If you could change controller (say, add another getXxx method), compile it, and see changes on-the-fly without need to reload anything, then, I think, your productivity could be higher, just like it could be with use of very neat eclipse plug-in. I think that 'reloading' is used here in 2 different senses, because I don't see the way to reload controller classes without custom implementation of ControllerFactory (patch). I mean reloading as it's described here, in chapter 3.1: http://citeseer.ist.psu.edu/liang98dynamic.html BTW, aside from productivity improvements, I also have another application for pluggable controller factory: I'd like to have ability to create controller instances with dynaop. Yuri. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: Sunday, June 13, 2004 3:37 PM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Eclipse plugin [...] Now about the pluggable controller factory. Actually that has been the only functionality in Maverick I found lacking myself. On the other hand I - and you too in this case - could just use the reload command to re-initialise the controllers, so I never realy considered proposing a patch. Eelco - Original Message - From: Yurii Urazlin [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, June 02, 2004 10:59 AM Subject: RE: [Mav-user] Eclipse plugin Greetings, Sorry, but I don't think that it should be in plug-in. 1. With IDEA you can click class name in XML files and it will open its source. Probably, Eclipse itself should provide this functionality? 2. If you use unpacked web-app and disabled caching in XSLTransformFactory, than you do not have to re-deploy anything. You just change it, and it is used. I think that there is sense in using adaptive classloader for throwaways. It would reload controller classes as they change without redeployment. If there was pluggable ControllerFactory, I could provide a patch. Yuri. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Hernandez Sent: Wednesday, June 02, 2004 1:23 AM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Eclipse plugin What about using the config file to help navigate to the controller classes. It would be nice to be able to see your project space in terms of the commands and controllers, and then to navigate to the source files associated with them. Just an idea... Also, if you are using xsl stuff (with domify) it would be great if the tool could pick up the xml transform data at various steps and do local (development) transforms with the xsl sources without having to deploy to the app server. Then you could do front-end presentation testing, html validation and such, in eclipse without having to deploy new version of the application. If this doesn't make sense I write in a little more detail, just let me know. - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] I'm kind of working on an Eclipse plugin for Maverick. After making some contributions for the Jetty Plugin (http://spindle.sourceforge.net) I decided that now is the time to really learn how to write them properly. Right now, the plugin does some pretty printing of the Maverick config file, and displays it's structure in the outline view a little bit smarter than just the XML outline. Does anyone have any good ideas for a useful Maverick plugin (or... are people interested in such a plugin at all?). Eelco --- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149alloc_id=8166op=click [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn
[Mav-user] New release(s) of Maverick (+opt)
Hi everyone. I just released new versions of Maverick and the opt packages. The changelog from 2.2.0: Version 2.2.2[6/27/2004] - Use Commons Logging instead of Log4J. - Log the stacktrace when reloadConfig() throws a Configuration exception on initialization. - A custom controller factory can now be provided. See the manual for an example. - Version 2.2.1[virtual] - Added support for URLs (http:, https:, file:, ftp:, jar:) as paths in XSL transforms. Also added support for monitoring 'file:' URLs and re-caching them upon change. - Redirects now properly encode session ids in the URL (if necessary). The only changes in the opt packages are the use of commons logging instead of log4j. Opt-fop - that I use for several projects myself - also has a fix for IE/ Acrobat 6 related (potential) troubles. I updated the docs with a short desc of the custom controller factory and an example of how it can be used, and I also added a short description of Baritus. Hope everyone has fun with it, and does not have too much trouble with switching to commons logging (probably not judging from the list traffic). Eelco Hillenius --- This SF.Net email sponsored by Black Hat Briefings Training. Attend Black Hat Briefings Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com [INVALID FOOTER]
Re: [Mav-user] I want to switch to Maverick....
1. It sounds to me that you do not need a lot of different commands, but possibly a lot of different views... If you need to do some Java action on a specific request, you can do that with a controller. You will (probably) at least end up with the number commands that you need to have controller classes. On the other hand, if most of your processing actually takes place in the XSL processing, and most of the time your controller does little more than just getting the XML from your XML repository, you could just define one command for that, and e.g. use a request parameter to figurure out which view (and thus which XSL transform) to use. 2. If the above works for you, your configuration file is probably not that big. Note that you can define your views globally (with all the transforms etc.) and reference them in the command definitions. If it still is too big, see if pre-prosessing the config file with XSLT works for you. See configuration option 'configTransform'. Eelco - Original Message - From: Peter L-S [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, June 15, 2004 1:12 PM Subject: [Mav-user] I want to switch to Maverick Hi, We have used Cocoon for 2 years and sadly it has evolved into a 234 armed octopus. Last night I was again trying to fix another Cocoon2 issue, and in desperation I started googleing for another java xml xslt framework than Cocoon. After a some time I ended up with Maverick.java We are running a live website using Cocoon2/eXist xmldb/xslt/jBoss and if possible move slowly towards Maverick, implementing the Maverick servlet alongside the cocoon servlet. I have read the manual looked at the examples downloaded the source and is very impressed of the simplicity of this implementation. 1. we have a ton of xml docs located in the eXist db. They are all transformed using xslt and serialized as html. I can do all this using xslt in Mav. without any problem but how do I serve all these html pages just using one command (is this right). 1a. can i use wildcard/regex in the command name=product_* ? 3. what html form template/validation system is the defacto standard with Mav. 4. does it require 2 Mav. servlets to serve /product/xx.html and /distros/xx.html. 5. can is split the maverick.xml file into more files so it would be easier to manage. (some of our cocoon.xml files are +1500 lines) Thanks in advance. -- Med venlig hilsen / Yours sincerely Peter http://easyspeedy.com ___ European Dedicated Server Hosting Extremely low prices, secure, and reliable Linux and BSD distributions only ___ --- This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND [INVALID FOOTER] --- This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND [INVALID FOOTER]
Re: [Mav-user] Eclipse plugin
I developped a first scratch that is like an XML editor - of which there are several useful plugins available, and probably will be part of the Eclipse distro sometime (http://www.eclipse.org/proposals/eclipse-webtools/index.html). However, it is a little bit smarter about views e.g. and potential functionality would be direct navigation to a defined controller class (you F3 in Java source files). But... too many other projects, too much hours of paid work to do, too many hobbies and festival season is here. I have stopped developping it and will not pick it up again either, as I think the rate of time I have to invest in it and it's general usefullness is not favorable enough. Now about the pluggable controller factory. Actually that has been the only functionality in Maverick I found lacking myself. On the other hand I - and you too in this case - could just use the reload command to re-initialise the controllers, so I never realy considered proposing a patch. Eelco - Original Message - From: Yurii Urazlin [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, June 02, 2004 10:59 AM Subject: RE: [Mav-user] Eclipse plugin Greetings, Sorry, but I don't think that it should be in plug-in. 1. With IDEA you can click class name in XML files and it will open its source. Probably, Eclipse itself should provide this functionality? 2. If you use unpacked web-app and disabled caching in XSLTransformFactory, than you do not have to re-deploy anything. You just change it, and it is used. I think that there is sense in using adaptive classloader for throwaways. It would reload controller classes as they change without redeployment. If there was pluggable ControllerFactory, I could provide a patch. Yuri. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Scott Hernandez Sent: Wednesday, June 02, 2004 1:23 AM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Eclipse plugin What about using the config file to help navigate to the controller classes. It would be nice to be able to see your project space in terms of the commands and controllers, and then to navigate to the source files associated with them. Just an idea... Also, if you are using xsl stuff (with domify) it would be great if the tool could pick up the xml transform data at various steps and do local (development) transforms with the xsl sources without having to deploy to the app server. Then you could do front-end presentation testing, html validation and such, in eclipse without having to deploy new version of the application. If this doesn't make sense I write in a little more detail, just let me know. - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] I'm kind of working on an Eclipse plugin for Maverick. After making some contributions for the Jetty Plugin (http://spindle.sourceforge.net) I decided that now is the time to really learn how to write them properly. Right now, the plugin does some pretty printing of the Maverick config file, and displays it's structure in the outline view a little bit smarter than just the XML outline. Does anyone have any good ideas for a useful Maverick plugin (or... are people interested in such a plugin at all?). Eelco --- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149alloc_id=8166op=click [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER]
Re: [Mav-user] Site permissions and release plan
Actually it is not. You can still use Log4J as you did, but there's one more lib living in you app space now - if it wasn't allready there because a lot of project have a dependency on it. I really like Log4J and never used other logging systems when I did not have to. I do understand users who do not want to have the dependency on it when they do not use it. Commons logging 1.0.3 consists of 17 classes and is about 31 kb, Log4J consists of 244 classes and is about 345 kb large. Eelco - Original Message - From: Ed [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Sunday, June 13, 2004 1:03 AM Subject: Re: [Mav-user] Site permissions and release plan Is this an optional change? IE is either the old or new logger a viable option? On the nerits of Maverick, I recently started using log4j exclusively. --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER]
[Mav-user] Site permissions and release plan
Hi all, I just commited the proposed changes to replace Log4J with Commons Logging. Jeff, could you change the rights on the site documents (index.html and maverick-manual.html)? They are only writeable for the owner... and that's you 8) All: any additional changes/ fixes I should make? Any ideas for a release (like version nbr, when, etc.) - I'm okay with preparing it. Eelcow --- This SF.Net email is sponsored by: GNOME Foundation Hackers Unite! GUADEC: The world's #1 Open Source Desktop Event. GNOME Users and Developers European Conference, 28-30th June in Norway http://2004/guadec.org [INVALID FOOTER]
RE: [Mav-user] Site permissions and release plan
Thanks. Finally there's my link |-) I can't build the manual however, as currently I do not have docbook configured. I'll try to do that some other time. Then about a release... I'll try this weekend, and call it version 2.3.0? After this weekend, I'll be very bussy drinking beer at festivals etc, so if anyone does have ft req/ bugs that they want to have solved, please mail them before Juni 11. Cheers, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Schnitzer, Jeff Sent: dinsdag 8 juni 2004 0:24 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] Site permissions and release plan I've reset the permissions on all the web content files. I can't think of any other changes... feel free to propose a release. Thanks! Jeff -Original Message- From: [EMAIL PROTECTED] [mailto:mav-user- [EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: Monday, June 07, 2004 2:57 PM To: [EMAIL PROTECTED] Subject: [Mav-user] Site permissions and release plan Hi all, I just commited the proposed changes to replace Log4J with Commons Logging. Jeff, could you change the rights on the site documents (index.html and maverick-manual.html)? They are only writeable for the owner... and that's you 8) All: any additional changes/ fixes I should make? Any ideas for a release (like version nbr, when, etc.) - I'm okay with preparing it. Eelcow --- This SF.Net email is sponsored by: GNOME Foundation Hackers Unite! GUADEC: The world's #1 Open Source Desktop Event. GNOME Users and Developers European Conference, 28-30th June in Norway http://2004/guadec.org [INVALID FOOTER] --- This SF.Net email is sponsored by: GNOME Foundation Hackers Unite! GUADEC: The world's #1 Open Source Desktop Event. GNOME Users and Developers European Conference, 28-30th June in Norway http://2004/guadec.org [INVALID FOOTER] --- This SF.Net email is sponsored by: GNOME Foundation Hackers Unite! GUADEC: The world's #1 Open Source Desktop Event. GNOME Users and Developers European Conference, 28-30th June in Norway http://2004/guadec.org [INVALID FOOTER]
RE: [Mav-user] VOTE: Make Eelco a committer
It works, thanks. So, about that work... 2.2.1 and 2.3 are pending, and I see that 2.3 (change packaging) is not done yet. I can start with that. What about the changes for 2.2.1; are these allready in the code? Any other things (like from the bugtracker) that I should adress? Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Schnitzer, Jeff Sent: vrijdag 4 juni 2004 21:27 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] VOTE: Make Eelco a committer Motion carried, Eelco you should now be enabled :-) Jeff -Original Message- From: [EMAIL PROTECTED] [mailto:mav-user- [EMAIL PROTECTED] On Behalf Of Eelco Hillenius Sent: Thursday, June 03, 2004 2:52 PM To: [EMAIL PROTECTED] Subject: RE: [Mav-user] VOTE: Make Eelco a committer Cheers people. Could someone give me a note when I have the rights? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of jim moore Sent: woensdag 2 juni 2004 11:52 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] VOTE: Make Eelco a committer +1 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mike Moulton Sent: Wednesday, June 02, 2004 12:07 AM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] VOTE: Make Eelco a committer +1 On Jun 1, 2004, at 2:24 PM, Scott Hernandez wrote: +1, then he can put the link up :) - Original Message - From: Schnitzer, Jeff [EMAIL PROTECTED] I propose making Eelco a committer. I'm +1. --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER]
RE: [Mav-user] VOTE: Make Eelco a committer
Cheers people. Could someone give me a note when I have the rights? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of jim moore Sent: woensdag 2 juni 2004 11:52 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] VOTE: Make Eelco a committer +1 -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mike Moulton Sent: Wednesday, June 02, 2004 12:07 AM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] VOTE: Make Eelco a committer +1 On Jun 1, 2004, at 2:24 PM, Scott Hernandez wrote: +1, then he can put the link up :) - Original Message - From: Schnitzer, Jeff [EMAIL PROTECTED] I propose making Eelco a committer. I'm +1. --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER] --- This SF.Net email is sponsored by the new InstallShield X. From Windows to Linux, servers to mobile, InstallShield X is the one installation-authoring solution that does it all. Learn more and evaluate today! http://www.installshield.com/Dev2Dev/0504 [INVALID FOOTER]
Re: [Mav-user] Use Apache Commons Logging instead of log4j
That's what I proposed about a year ago, and I still am for replacing Log4J by Commons Logging. Eelco - Original Message - From: Jon Newton [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, June 01, 2004 3:56 PM Subject: [Mav-user] Use Apache Commons Logging instead of log4j What is everyone's opinion on changing maverick to use the Apache Commons logging API instead of hardcoding a dependency on log4j. My reason for wanting this would be to cut down on the large number of jar files my project is accumulating.. I'd like to use java.util.logging as much as possible. This would also make maverick even more flexible.. Jon Newton Scan Business Systems 800-906-7226 --- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149alloc_id66op=ick [INVALID FOOTER] --- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149alloc_id=8166op=click [INVALID FOOTER]
Re: [Mav-user] everquest2.com now utilizing Maverick
Cool. The company I work for mostly uses Maverick/ Velocity (or actually my OSS framework extension Baritus http://baritus.sourceforge.net) for our projects. I find it especialy striking how happy newbies are with Velocity compared to JSP. About your framework... did you learn anything/ make any usefull additions you would like to share? Eelco - Original Message - From: Giles, Mick [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, May 28, 2004 11:28 PM Subject: [Mav-user] everquest2.com now utilizing Maverick Hi all, I just wanted to share my experiences with the other members of the list. Here at SOE we have recently launched our newest website http://www.everquest2.com http://www.everquest2.com/ and it is our first launch utilizing our new web framework based on Maverick and Velocity. It's been such a smashing success that we will be developing all of our new content on the framework and eventually refactoring our legacy sites to use it as well. --- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149alloc_id=8166op=click [INVALID FOOTER]
[Mav-user] Baritus: extension project for Maverick online
Hi all, There's a new web framework on the block that extends (not alters) Maverick. It provides services for fine-grained and extensible population and validation and an interceptor mechanism. A bit like a boosted version of FormBeanUser. Interested? Take a look at: http://baritus.sourceforge.net. The refdocs are still worked on, but any comments are welcome. It would be great if one of the project admins of Maverick could include a link to Baritus on the Maverick site. For the people who use Maven: the project is Mavenized, but as Maverick is not at the default Maven repo site (www.ibiblio.org/maven), you could include the repo http://test.topicus.nl/maven in your maven build.properties for the time being. Eelco --- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id70alloc_id638op=click [INVALID FOOTER]
RE: [Mav-user] Maverick webapp not visible anymore?
Did you look at the logs in {tomcat-home}/logs? I suspect a classpath error. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michiel Verhoef Sent: maandag 11 augustus 2003 11:05 To: '[EMAIL PROTECTED]' Subject: [Mav-user] Maverick webapp not visible anymore? Hi, This is probably a nwebie question that can be listed under really stupid mistakes but here goes: Last week I made a new webapp using Maverick and although the Database Application it was connecting to had some problems (which are completely besides Maverick so these should not matter for this question) the commands I defined for testing Maverick did work fine. This morning I tried to start up Maverick to continue working but for the life I could not get the webapp working! All examples etc. worked fine, so Tomcat should be running fine, I did not get any weird messages when starting up etc. All I could get was: type Status report message /mticketing/welcome.m description The requested resource (/mticketing/welcome.m) is not available. Even requesting a test html file did not work. I tried to stop tomcat, clear the cache, reboot my machine, etc. but no changes in behaviour. Does anybody have a clue what I can do next to at least get the first screen (which is nothing more than an HTML file) visible? I am getting slightly mad here... Thanks in advance, Michiel --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0013ave/direct;at.aspnet_072303_01 /01 [INVALID FOOTER] --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0013ave/direct;at.aspnet_072303_01/01 [INVALID FOOTER]
RE: [Mav-user] new user
Thanks for thanking ;) I was wondering if anyone took a closer look at the example, and if anyone has any comments. I kind of forgot to explain my goals behind the framework. I do not like the available validation frameworks because in those frameworks you have to put type information etc. in a configuration file. Moreover, to keep the error reporting working, you should use 'flat' forms with string fields. Now, what I achieved in this framework is that: 1) You have standard typechecking and error reporting build in. If you need an integer field, just declare it as an integer property in your form. If user input is not valid for an integer, an error is recorded, the original input value is saved as an override (in order to show the user the value he or she submitted). 2) The ability to use 'deeper' forms (hmm, my English is lousy at times... Sorry). E.g., you can have a form like this: public class EditCDForm extends AbstractForm { private Long someId; private CD cd = new CD(); // create empty instance to be able to populate it from the request ... And HTML fields like this: input type=text name=cd.title So, no need to construct the object anymore, as you allready have it in your form. You could do: Long newId = (Long)session.save(form.getCD()); // make persistent with Hibernate Besides, this gives you better structuring options, especially where you reuse forms for different purposes. 3) Multi-line handling. In my form I could have: private Double[] trackLength; And in my html form I could have: input name=trackLength size=10 !-- field one -- input name=trackLength size=10 !-- field two -- input name=trackLength size=10 !-- field three -- That should result in having my form populated with an array of three doubles for field trackLength. If you look at the complete example, you can see that the error reporting knows about these fields as well; if you give invallid input for field two, there will be a saved error and a saved override value for that field. It's a pitty that multilines only work for flatt fields, but that's HTML... As a final note, I do not: 1) Worry about javascript validation (which seems to be the key focus of Jakarta Commons Validator). When I write webapps, I try to avoid javascript as much as I can. Imho, you need to focus on the server side validation anyway, and if you really need to write some javascript, you better just write it and keep it visible (I *hate* all the JSP tags that generate fancy stuff for you... makes it much harder to debug) 2) Take extra model information (like maximum field sizes etc) into account. It's pretty easy to do by overriding protected boolean validateForm(ControllerContext ctx, AbstractForm formBean) from AbstractCtrl. And if you want to do this automatically, I think you want to do this at a central place (like a custom hibernate mapping file). Regards, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Valeri Sarantchouk Sent: vrijdag 25 juli 2003 17:18 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] new user Eelco, Fantastic! Thanks for the example! I agree with Jeff that Maverich doesn't need documentation because it's simple. It#8217;s 80/20 rule? 80% of the time you don't need documentation for Maverick at all :~), but those 20% of rare cases will make you read source. Just my $0.02. Struts' online documentation is more targeted at novice inexperienced developers, whereas Maverick is for those who tried everything else and got disappointed. This is one of the reasons Struts got so much attention (7 books published!) despite the unnecessary complexity and all really hard time it gives to its adopters. So Maverick remains a hidden gem in ocean of J2EE application frameworks. Regards, Valeri --- --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0013ave/direct;at.aspnet_072303_01/01 [INVALID FOOTER]
RE: [Mav-user] new user
No lack of interest here ;) I'll put in on a public server later this week(end), and send an email to this list with the details. Mind you that it's *not* a blackbox lib that instantly solves all your validation problems. But it certainly could give people some idea on how to solve these things in a handy way (imho). Btw, you need Maven to build, so if you probably want to install that first. Ok, more later this week, Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Haenel, Thomas Sent: woensdag 23 juli 2003 2:18 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] new user Hi Eelco, I would be interested in seeing your demo as I have recently become interested in Maverick. Could you send it to me if you don't include it on the Maverick website ? Many thanks, Thomas. -Original Message- From: Eelco Hillenius [mailto:[EMAIL PROTECTED] Sent: Tuesday, 22 July 2003 5:22 PM To: [EMAIL PROTECTED] Subject: RE: [Mav-user] new user I am hooked to Maverick as well. I used it for several projects, and just begun using it for a large scale project. For this project I am responsible for education as well, and for this purpose I developped a small example webapp. It uses Velocity for the views and provides a small additional framework for default error handling etc, and uses Hibernate for ORM (MySQL as database) ORM. If you want, I can send it to you (and other interested readers). Maybe it's nice for your presentation, and I think the additional framework shows an example of how to do semi-automatic error handling, as this is something that people coming from Struts look for when they start using Maverick (at least, that's my experience). It's not documented yet, but it should not be too difficult to find out what's happening. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Volkmann, Mark Sent: maandag 21 juli 2003 22:22 To: '[EMAIL PROTECTED]' Subject: [Mav-user] new user I see that there isn't much traffic on this mailing list now. That's a shame. I just learned about Maverick a few days ago and I'm hooked. I like it much better that Struts. Part of the reason is that I strongly prefer generating HTML using XSLT than using JSP and Struts strongly leans toward JSP. DOMify works great for generating an XML representation of your model! However, I think the issue of it not dealing with circular references needs to be addressed. I'm creating a presentation of Maverick that I may present at the St. Louis Java User Group soon. If there is any interest in putting a link to my presentation on the Maverick web site, I'd be open to that. If anyone is interested, I can send my presentation to this mailing list before I give the talk. That way if I've misstated something, one of you might correct me on it before it's too late. Congrats on a great framework! *** WARNING: All e-mail sent to and from this address will be received or otherwise recorded by the A.G. Edwards corporate e-mail system and is subject to archival, monitoring or review by, and/or disclosure to, someone other than the recipient. --- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 [INVALID FOOTER] --- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 [INVALID FOOTER] --- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 [INVALID FOOTER]
RE: [Mav-user] new user
snip Hi Eelco, I would be interested in seeing your demo as I have recently become interested in Maverick. Could you send it to me if you don't include it on the Maverick website ? Many thanks, Thomas. /snip I am a Maverick user, not a committer, so it will not be included on the Maverick website. Maybe, if people like it, I could put it on SF somewhere. It should be a more complete (larger, butter looking) example for that though. Eelco --- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 [INVALID FOOTER]
RE: [Mav-user] new user
That's done. For the people who are interested in the example, you can download it from: http://80.89.232.168/maverickexample-1.0.zip I'll keep it there for about two weeks. I hope there's not too many bugs in them; it's (the framework) work in progress. If you do find em, or have any other comments, please drop me a line. As I said earlier, you can build it (and get the dependencies) with maven. Please read the README file first. Hope you have fun with it, Eelco Hillenius --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0013ave/direct;at.aspnet_072303_01/01 [INVALID FOOTER]
RE: [Mav-user] new user
I am hooked to Maverick as well. I used it for several projects, and just begun using it for a large scale project. For this project I am responsible for education as well, and for this purpose I developped a small example webapp. It uses Velocity for the views and provides a small additional framework for default error handling etc, and uses Hibernate for ORM (MySQL as database) ORM. If you want, I can send it to you (and other interested readers). Maybe it's nice for your presentation, and I think the additional framework shows an example of how to do semi-automatic error handling, as this is something that people coming from Struts look for when they start using Maverick (at least, that's my experience). It's not documented yet, but it should not be too difficult to find out what's happening. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Volkmann, Mark Sent: maandag 21 juli 2003 22:22 To: '[EMAIL PROTECTED]' Subject: [Mav-user] new user I see that there isn't much traffic on this mailing list now. That's a shame. I just learned about Maverick a few days ago and I'm hooked. I like it much better that Struts. Part of the reason is that I strongly prefer generating HTML using XSLT than using JSP and Struts strongly leans toward JSP. DOMify works great for generating an XML representation of your model! However, I think the issue of it not dealing with circular references needs to be addressed. I'm creating a presentation of Maverick that I may present at the St. Louis Java User Group soon. If there is any interest in putting a link to my presentation on the Maverick web site, I'd be open to that. If anyone is interested, I can send my presentation to this mailing list before I give the talk. That way if I've misstated something, one of you might correct me on it before it's too late. Congrats on a great framework! *** WARNING: All e-mail sent to and from this address will be received or otherwise recorded by the A.G. Edwards corporate e-mail system and is subject to archival, monitoring or review by, and/or disclosure to, someone other than the recipient. --- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 [INVALID FOOTER]
Re: [Mav-user] Sitemesh or view transforms?
For what it's worth, here are my thoughts... I never gave Sitemesh a serious try, though maybe I should as it seems to be very popular lately. I must say that I think it does not give me much confidence looking at the release notes and looking at the pace that is worked on the project (which does not seem to be very fast for a project with quite a few outstanding bug reports). But... I could be wrong and maybe it is great to use. Now, about your top and side bars. Personally I would not have a problem to do some proper logic coding in the view (and maybe use some logic centric components to keep the view clean) AS LONG as you do not have to handle flow stuff in the top and side bars. The kind of processing that goes on in your top and side bars are - even if the processing is complex - probably allways the same. Another option (that I never tried myself but heard good things about from a collegue) you could have a look at is Tapestry (http://jakarta.apache.org/tapestry/index.html). Completely different from Maverick (and the like), but looks very useful for some situations. Has anyone reading this list experience with Tapestry? Just my two cents ;) Eelco - Original Message - From: DEO Kedar [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, July 10, 2003 5:59 PM Subject: [Mav-user] Sitemesh or view transforms? Hi, All of the pages im my application have top menu navigation, and side navigation bars, which are seperate pages. I want to know if there is any performance metrics available of using maverick view transformation, and using Sitemesh to assemble the page. If no metrics, at least any thoughts on this? The menus and side navigation are role based, so there will be lot of logic going into building these side and top nav views. Thanks, Deo --- This SF.Net email sponsored by: Parasoft Error proof Web apps, automate testing more. Download eval WebKing and get a free book. www.parasoft.com/bulletproofapps [INVALID FOOTER] --- This SF.Net email sponsored by: Parasoft Error proof Web apps, automate testing more. Download eval WebKing and get a free book. www.parasoft.com/bulletproofapps1 [INVALID FOOTER]
Re: [Mav-user] Reload command in web.xml
I have to object to that (and I am not one of the maintainers). I think the documentation is good, taking the scope of the project and the provided examples in account. Moreover, I think it is one of the better written OSS Java projects around where it comes to clearity of design and code. In other words: you should not have any trouble understanding what's going on under the hood looking at the sources. Eelco - Original Message - From: Marcel Kung [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, July 02, 2003 10:23 PM Subject: Re: [Mav-user] Reload command in web.xml When your developing a website you are making numerous changes to maverick.xml, the xsl stylsheets and your Java classes. With the number of changes that are going on it should be obvious that stopping and starting the server each time will become rather annoying, rather fast. The reload.m idea works but the documentation does not make this technique obvious (actually the documentation doesn't make very much obvious at all :-) Marcel - Original Message - From: Thompson, Kris [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, July 03, 2003 4:19 AM Subject: RE: [Mav-user] Reload command in web.xml Sorry I don't have an answer for this but I would like to ask why would one want to use this feature anyway? What is the true benefit? Kris -Original Message- From: Marcel Kung [mailto:[EMAIL PROTECTED] Sent: Tuesday, July 01, 2003 7:22 PM To: [EMAIL PROTECTED] Subject: [Mav-user] Reload command in web.xml In previous mav-user list archives there is mention of using the reloadCommand to cause Maverick to reload all the maverick.xml and XSL changes automatically. In particular email http://sourceforge.net/mailarchive/message.php?msg_id=110721 references the following settings in web.xml: servlet servlet-namedispatcher/servlet-name display-nameMaverick Dispatcher/display-name servlet-classorg.infohazard.maverick.Dispatcher/servlet-class init-param param-namereloadCommand/param-name param-valuereload/param-value /init-param load-on-startup2/load-on-startup /servlet This appears in the Friendbooks examples and I have tried the examples under both Tomcat and Resin and in neither does this reload appear to work. You can change the xsl stylesheets and maverick.xml and refresh the browser but until you restart the server nothing changes. How is this reload supposed to work? Cheers, Marcel --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0016ave/direct;at.asp_06 1203_01/01 [INVALID FOOTER] --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0016ave/direct;at.asp_061203_01/01 [INVALID FOOTER] --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0016ave/direct;at.asp_061203_01/01 [INVALID FOOTER] --- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa0016ave/direct;at.asp_061203_01/01 [INVALID FOOTER]
Re: [Mav-user] Writing a book on JBoss/Jetty - including maverick - looking for reviewers
I'm allways in for that, though I'm not involved in the project (just a user). But I figure, the more readers the better your result can be? Eelco - Original Message - From: Kimberley Scott [EMAIL PROTECTED] To: Mav-User (E-mail) [EMAIL PROTECTED] Sent: Tuesday, June 24, 2003 12:27 AM Subject: [Mav-user] Writing a book on JBoss/Jetty - including maverick - looking for reviewers Hiya, My hubby spurred me on to do this, so I'll blame him if I get flamed... :-) I've been wanting to write something about JBoss/Jetty for some time due to the complete lack of solid, cookbook-like reliable documentation. A couple of weekends ago I put together the first few chapters, and now having a weeks worth of Maverick under my belt, I'm definately going to include a segment on it. I'm wondering if anyone feels up to spending a bit of time acting as a reviewer for the book as a whole and particularly the Maverick section when I get to it. I haven't written that bit yet. :-0 When I get to that, I'll probably be asking a million dumb questions wringing every last bit of information and usage and example ideas out of the people in this group... My hope is the section of maverick will become the 'cookbook' for maverick **as long as the illustrious leaders are fine with this**... I know this should probably be done via serverside or someone, but the 'soon to be' maverick section really needs to be reviewed by people who use it. Whaddaya say Jeff? If anyone is interested, just drop me an e-line. I written about 93 pages so far, but it's only been a weekends work and has a few bugs in it, and I only get every second weekend or so to work on it (in between cooking and cleaning :-), so it'll be a while before it's finished. Maybe if I have real user comments within the doc I'll get off my arse and finish it and get it published... :-) It's currently in word doc format using the O'Reilly animal book template btw. Kimbo Ms Kimberley Scott Senior Software Engineer DCG Media Ltd --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER]
Re: [Mav-user] Internationalization
I understand from the quoted sentence that they target situations where each user has more than one locale active. Because if they mean that each user has it's own locale, I don't see the problem at all. Even in the case where you want to use more than one locale for a user it's easy to implement... I must be missing something! Eelco - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Saturday, June 21, 2003 5:32 PM Subject: Re: [Mav-user] Internationalization So far, I did not have special reqs for internationalization, so the default i18n support in Java works fine for me. The commons package looks allright though; might give it a try next time. You probably read about the shunting option in Maverick? You can do neat stuff with that as well. Btw, the following quote is from the commons-resource site and is listed as one of the shortcommings of the default i18n framework: quote The classes assume that all messages should be presented based on a single Locale, while many applications require support for different Locales for each current application user. /quote I have to say I wonder what concrete situations they had in mind... I never had a similar req. Do you have any special stuff? Eelco - Original Message - From: David Cruwys To: [EMAIL PROTECTED] Sent: Saturday, June 21, 2003 9:47 AM Subject: [Mav-user] Internationalization Struts has inbuilt internationalization, Maverick which is only focusing on the MVC does not. I had a look on the Jakarta site and elsewhere for a standard internationalization component and notice that there is a preliminary one in the commons - sandbox which is going to be based on the Struts implementation. I was wondering what other Maverick users are doing in regards to internationalization, is there a pre made component for easily working with i18n or have most of you rolled your own components for i18n support within your applications. Cheers Dave --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER] --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER]
Re: [Mav-user] FW: Newbie: Setters appear to not being called...
or wrappers (like Double instead of double). That works fine with BeanUtils as well... Eelco - Original Message - From: Kimberley Scott [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, June 19, 2003 3:54 PM Subject: [Mav-user] FW: Newbie: Setters appear to not being called... Arhhh I'm just dense as three inch hard wood... I had been converting an existing system over to maverick and copied the existing beans into controller/models. Look at these setters/getters: protected double term = 0d; public void setTerm(String value) { this.term = stringToDouble(value); } public void setTerm(double value) { this.term = value; } public double getTerm() { return this.term; } Switch to Strings only and everything works fine. Bloody obvious. :-0 nationality mode=Australian Whaddareyer? An idyut, arnt yer? /nationality Sorry to bug anybody... Ms Kimberley Scott Senior Software Engineer DCG Media Ltd -Original Message- From: Kimberley Scott Sent: 19 June 2003 13:09 To: '[EMAIL PROTECTED]' Cc: Kimberley Scott Subject: Newbie: Setters appear to not being called... Hiya, Just started using maverick. Luv it. Gotta slight problem and feeling I'm going mad. I think I've got it wrong about how you extend controllers. I have this app I'm building, and have a problem where the setters for form variables are not being called. I just know I'm doing something wrong, but can't see where, and I've re-read the manual supplied (thankyou guys) and studied the 'pig' with no luck. I've got cut-down code below and would love any help people can give me: classes: public class ControllerErrorable extends ThrowawayBean2 { ... hasErrors, getErrors etc... } public class Menu extends ControllerErrorable { ...setters and getters for some menu stuff... protected String perform() throws Exception { super.perform(); ...other stuff } } public class Calculator extends Menu { ...setters and getters for special calculations... ...and also: public void setTerm(String value) { System.out.println(Hey! How come I'm not being called?); this.term = stringToDouble(value); } protected String perform() throws Exception { super.perform(); ...other stuff } } maverick.xml: command name=calculator controller class=com.dcg.ctl.Calculator / view name=success path=tools/calculator.jsp transform path=outerPageWrapper.jsp/ /view /command tools/calculator.jsp: form blah blah ...other input... input type=text name=term size=4 maxlength=4 value=c:out value=${model.longTerm}/ / ...submit... /form I must be doing something seriously wrong here, because when I call 'calculator.m', the tools/calculator.jsp runs ok. I fill in a value for the input field 'term', and click submit. The 'Menu' class appears to have it's setters and it's perform() called fine. What doesn't seem to be happening is the call to setTerm(String value) within the Calculator controller. I iterated over the Request and get this: (iterating over the request parameters) 12:48:23,579 INFO [STDOUT] [product] == [bnpl] 12:48:23,579 INFO [STDOUT] [period] == [0] 12:48:23,579 INFO [STDOUT] [amount] == [0] 12:48:23,579 INFO [STDOUT] [action] == [obq] 12:48:23,579 INFO [STDOUT] [deposit] == [] 12:48:23,589 INFO [STDOUT] [term] == [36] === 12:48:23,589 INFO [STDOUT] [apr] == [] (then called getAction() and getTerm() deliberately within perform() within the Calculator class) 12:48:23,579 INFO [STDOUT] action==[obq] 12:48:23,579 INFO [STDOUT] term==[0.0] == So 'term' is being sent through. I'm stumped and feeling a tad dim. Can anyone help? Ms Kimberley Scott Senior Software Engineer DCG Media Ltd --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER] --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER]
Re: [Mav-user] Newbie: Setters appear to not being called...
Your right, I had some strange behaviour in the past when working with the base types (I thought), but looking at the BeanUtils code, I see that I was too quick to blame the base types. Should work fine indeed. And... as a hint to miss Scott: stuff like mapping select to String[] works fine as well! Eelco - Original Message - From: jim moore [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, June 19, 2003 3:43 PM Subject: Re: [Mav-user] Newbie: Setters appear to not being called... also, mav (through bean utils) will do the datatype conversion for you, so instead of : public void setTerm(string term) { this.term = stringToDouble(value); } you can just have: public void setTerm(double term) { this.term = term; } --jim - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, June 19, 2003 8:26 AM Subject: Re: [Mav-user] Newbie: Setters appear to not being called... Maverick uses Commons BeanUtils to populate its beans (like the controllers in your case). BeanUtils does not populate any fields that do not have a getter as well. The solution is to include the getters (like getTerm() etc.). Eelco - Original Message - From: Kimberley Scott [EMAIL PROTECTED] To: [EMAIL PROTECTED] Cc: Kimberley Scott [EMAIL PROTECTED] Sent: Thursday, June 19, 2003 2:09 PM Subject: [Mav-user] Newbie: Setters appear to not being called... Hiya, Just started using maverick. Luv it. Gotta slight problem and feeling I'm going mad. I think I've got it wrong about how you extend controllers. I have this app I'm building, and have a problem where the setters for form variables are not being called. I just know I'm doing something wrong, but can't see where, and I've re-read the manual supplied (thankyou guys) and studied the 'pig' with no luck. I've got cut-down code below and would love any help people can give me: classes: public class ControllerErrorable extends ThrowawayBean2 { ... hasErrors, getErrors etc... } public class Menu extends ControllerErrorable { ...setters and getters for some menu stuff... protected String perform() throws Exception { super.perform(); ...other stuff } } public class Calculator extends Menu { ...setters and getters for special calculations... ...and also: public void setTerm(String value) { System.out.println(Hey! How come I'm not being called?); this.term = stringToDouble(value); } protected String perform() throws Exception { super.perform(); ...other stuff } } maverick.xml: command name=calculator controller class=com.dcg.ctl.Calculator / view name=success path=tools/calculator.jsp transform path=outerPageWrapper.jsp/ /view /command tools/calculator.jsp: form blah blah ...other input... input type=text name=term size=4 maxlength=4 value=c:out value=${model.longTerm}/ / ...submit... /form I must be doing something seriously wrong here, because when I call 'calculator.m', the tools/calculator.jsp runs ok. I fill in a value for the input field 'term', and click submit. The 'Menu' class appears to have it's setters and it's perform() called fine. What doesn't seem to be happening is the call to setTerm(String value) within the Calculator controller. I iterated over the Request and get this: (iterating over the request parameters) 12:48:23,579 INFO [STDOUT] [product] == [bnpl] 12:48:23,579 INFO [STDOUT] [period] == [0] 12:48:23,579 INFO [STDOUT] [amount] == [0] 12:48:23,579 INFO [STDOUT] [action] == [obq] 12:48:23,579 INFO [STDOUT] [deposit] == [] 12:48:23,589 INFO [STDOUT] [term] == [36] === 12:48:23,589 INFO [STDOUT] [apr] == [] (then called getAction() and getTerm() deliberately within perform() within the Calculator class) 12:48:23,579 INFO [STDOUT] action==[obq] 12:48:23,579 INFO [STDOUT] term==[0.0] == So 'term' is being sent through. I'm stumped and feeling a tad dim. Can anyone help? Ms Kimberley Scott Senior Software Engineer DCG Media Ltd --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER] --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php [INVALID FOOTER] --- This SF.Net email is sponsored by: INetU Attention Web Developers Consultants
[Mav-user] maverick-opt-fop with fop-0.20.5rc3a
Hi all, When using the latest version of FOP (which is the only version that behaves really well with my system) I came across some API changes that breaks FopTransform from maverick-opt-fop. 1. Options are now only supported for command line operations; 2. The Avalon logger now must be set with 'driver.setLogger(log)' instead of 'MessageHandler.setScreenLogger(log)'. I do not think 'options' is supported in any other way now; I could not find any docs about it (though I didn't search the mailing list. As it not really encouraged anyway, imho it's best to just discard it. I've included a path that works with both the older (4) and the 5rc3a versions of FOP. I do not set a logger though (but have the 5rc3a version as a comment), as one of the methods breaks one of the versions. If not set, the default (screen-) logger will be used. Eelco Index: FopTransform.java === RCS file: /cvsroot/mav/opt-fop/src/java/org/infohazard/maverick/opt/transform/FopTransform.java,v retrieving revision 1.11 diff -u -r1.11 FopTransform.java --- FopTransform.java 7 Aug 2002 18:03:05 - 1.11 +++ FopTransform.java 9 Jun 2003 16:35:29 - @@ -2,12 +2,10 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; -import java.io.File; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; -import java.io.StringReader; import java.io.StringWriter; import javax.servlet.ServletConfig; @@ -28,9 +26,8 @@ import org.apache.avalon.framework.logger.Log4JLogger; import org.apache.fop.apps.Driver; import org.apache.fop.apps.FOPException; -import org.apache.fop.apps.Options; -import org.apache.fop.messaging.MessageHandler; import org.apache.log4j.Category; + import org.infohazard.maverick.flow.ConfigException; import org.infohazard.maverick.flow.Transform; import org.infohazard.maverick.flow.TransformContext; @@ -41,7 +38,9 @@ import org.xml.sax.ContentHandler; import org.xml.sax.InputSource; - +/** + * This Transform runs the input (XSL:FO) through the apache FOP processor + */ public class FopTransform implements Transform { @@ -51,7 +50,6 @@ protected static final String ATTR_OUTPUT = output; protected static final String ATTR_DISPOSITION_TYPE = disposition-type; protected static final String ATTR_FILENAME = filename; - protected static final String ATTR_CONFIG = config; protected TransformerFactory tFactory = TransformerFactory.newInstance(); @@ -64,23 +62,15 @@ */ protected String filename; - - protected String configPath = null; - - public FopTransform(Element transformNode, ServletConfig servletCfg) throws ConfigException - + public FopTransform(Element transformNode, ServletConfig servletCfg) + throws ConfigException { this.setOutput(XML.getValue(transformNode, ATTR_OUTPUT)); this.filename = XML.getValue(transformNode, ATTR_FILENAME); - - String path = XML.getValue(transformNode, ATTR_CONFIG); - if (path!=null) - { - this.configPath = servletCfg.getServletContext().getRealPath(path); - } } - public void setOutput(String output) throws ConfigException { + public void setOutput(String output) throws ConfigException + { if (output != null) { if (output.equalsIgnoreCase(pdf)) @@ -248,24 +238,14 @@ private void go(InputSource input) throws IOException, ServletException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); - Log4JLogger dlog = new Log4JLogger(fopDriverLog); - MessageHandler.setScreenLogger(dlog); - try { - Options options = null; - - //load userconfig file if specified - if (configPath != null) - { - //load the user config file if specified - options = new Options(new File(configPath)); - } else { - //try and load the standard options off of the classpath - options = new Options(); - } Driver driver = new Driver(input, baos); - driver.setLogger(dlog); + Log4JLogger dlog = new Log4JLogger(fopDriverLog); + + // works with fop-0.20.5rc3a +
RE: [Mav-user] reusable controllers and session objects
IMHO a sensible strategy of developping apps is to first focus on the behavoir and after that focus on performance issues. That does not mean that it is wrong to take performance issues in account in an early stage, but just do not let it overtake the main focus of your project. In my experience caching CAN make a huge difference though, especially when you have database heavy apps or - like Jeff said - object that have high initialisation costs. But ya, things like synchronisation can be killers as well. And if you use transactions for instance... be smart with them (like: is it possible to do more in the same transaction... made huge differences for us when working with OJB). And as a side note: three years ago I developed several java webapps for the AS-400 platform (JDK1.1.x). In that case object creation *was* very expensive so it did make sense to use object caching. I do not know about the current performance charactaristics of that platform. Second side note: GC can give you problems at times. A recent project where we made heavy use of JSTL could crash our server! There is/ are memory leak(s) in JSTL presumably the forEach tag. The strange thing was that in certain cases when the GC did a run the JVM ended up using more memory than before this run. On several servers (both on Win and Lunix) the memory usage could exeed gigabytes within one minute before crashing... That brings me to an example where caching makes a big difference. If you look at the performance gain Tomcat 4.1.x got compared to Tomcat 4.0.x: for our apps it was the caching of the custom tags in Tomcat 4.1.x that made the difference (about 1500 milis!). Funny thing though is that, allthough Tomcat 4.0.x is a lot slower with our JSTL intensive project than Tomcat 4.1.x, the former never crashes. This is to illustrate that, allthough caching can make a huge difference at times, it also adds complexity thus usually more bugs (can confirm that from personal experience too!) So my bottom line is to be practical. First build your app only addressing the most obvious performance issues. When all works/ is stable look at performance characteristics. IF you want to cache be aware of the added complexity, maybe using something like JCS (http://jakarta.apache.org/turbine/jcs/index.html) can help reducing that (allthough I never used it). The reason that I sometimes use singleton controllers is that those controllers do a lot of initialisation that is equal for all users and should be done only once. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Schnitzer, Jeff Sent: maandag 31 maart 2003 23:42 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] reusable controllers and session objects From: Valeri Sarantchouk [mailto:[EMAIL PROTECTED] I am trying to avoid creating new objects at every request. Is it possible to use a servlet as a (Trhowaway2) Controller? Or other reusable accross requests conroller. [...] ClientModel has 38 fields and its creation and rendering are costly operations. Plus we have at least 70 concurrent users (accessing the same view at the same time) at low periods and 350+ at high, so creating new objects for each request and passing old ones to gc doesn't look good from performace point of view. In old application, I use an object pool to get instances of Client objects for new users; and re-use Client objects found in user's session for logged-in users. Can you advise me on how to replicate an object pool with Maverick and how to reuse the same object found in session? I see you found the ControllerSingleton (and presumably FormBeanUser) controller base classes. However, are you sure of the performance characteristics of your application? Much research has gone into this subject, and the general conclusion has been that the performance cost of object creation and collection is vastly less than the performance cost of synchronization. The generational garbage collection scheme in modern JVMs is very efficient, especially with short-lived objects such as Throwaway controllers. On the other hand, the thread synchronization required for an object pool is tortuous for an application with high concurrency. Search the JBoss list for this subject - they concluded that the object pooling of EJBs is only of value when the initialization cost of a bean is very high (establishing network connections, etc). My own experience confirms this. The Sims Online player website produces zillions of objects (much, much more than a typical website) yet when maxed out under load testing I find that threads are always waiting for monitor locks. Just to give you some more idea of relative scale, a single Tomcat request produces a flurry of objects. Populating bean properties with BeanUtils produces a flurry of objects. Every JDBC driver I've ever seen produces *vast* quantities of garbage. Watching an application under a profiler is an enlightening experience -
RE: [Mav-user] reusable controllers and session objects
I prefer Velocity for simplicity and, combined with the toolbox and velocity servlet project, you can do all the stuff you can do in JSP's. With XML/XSLT you have 'know' all the stuff you're going to use in a view beforehand (just like using Velocity without the toolbox extention). Personally I like program 'dirty' at times according to the majority of Java programmers it seems. For instance, I have no problem with getting data from a database with a query that's in a view (that needs no input). Just like PhP :). I think one of the reasons that a lot of starters/ webdesigners prefer PhP and ASP/.NET over Java (at least that what I see around me) is not that it is harder, but that the Java way of programming webapps allways has to be in perfect OO style. So, even for a small site, you *have* to start with an object model. Then translate that (or the other way around) to a RDBMS. Then use something like OJB/ Hibernate/ Castor to talk to your model (and I NEVER have seen a project that did not cost a lot of time thanks to bugs in these mapping layers). Then ofcourse for every trival piece of info to show on your site you have to write an controller (hey, I wonder where the C in MVC is for... could it the controller for INPUT usage?). But then... finally we have build ourselves a nice and clean webapp. Funny thing is though, that for the smaller to average sized web projects your average PhP 'script kiddie' would have build the whole damn thing in one third of the time it took us! And we did not even start thinking about using EJB's. My point? Don't overengineer all the time. Seen it happen too often. AND it gives Java a bad name for the more 'pragmatical' programmers (read PhP/ ASP/ 4GL adepts) and managers in general. Hah that's a relieve. I just had to put this on a mailing list. I seriously have discussions at least once a week on this subject with my Java oriented collegues (who strongly disagree on this, just as they prefer Struts over Maverick as it 'does so much for you' (read: they have the form beans/ tags)), and I have to hear too often from collegues who use PhP/ ASP/ .NET/ Delphi to build applications that they think Java takes too long to develop an application. Be practical! Engineer according to the complexity of your application! Allright... I'm feeling like a scoolteacher/ know-all. Sorry about that. But I *am* wondering what other people think about this. Maybe a new thread? Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Valeri Sarantchouk Sent: dinsdag 1 april 2003 16:23 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] reusable controllers and session objects Yes, sometimes I loose balance between adhering to initial design and making shortcuts when I encounter a performance bottleneck. I also considered contrast of JSTL simplicity from page author point of view with its complexity from precompiler/VM point of view, and concluded (but I still could be wrong) that even JSF+JSTL don't make JSP ideal View technology. I see XSLT as the cleanest and most elegant approach to build a View. Though, I like XMLC and Velocity for their performance. (I might look unreasonably obsessed with performance issues. I am :) I think that each new software product I develop should perform at least on the same level as its predecessor. Expecially knowing how good PHP- and Perl-based solutions could be in simple applications.) Thanks, Valeri --- On Tue, 1 Apr 2003 10:41:51 Eelco Hillenius wrote: IMHO a sensible strategy of developping apps is to first focus on the behavoir and after that focus on performance issues. That does not mean that it is wrong to take performance issues in account in an early stage, but just do not let it overtake the main focus of your project. In my experience caching CAN make a huge difference though, especially when you have database heavy apps or - like Jeff said - object that have high initialisation costs. But ya, things like synchronisation can be killers as well. And if you use transactions for instance... be smart with them (like: is it possible to do more in the same transaction... made huge differences for us when working with OJB). And as a side note: three years ago I developed several java webapps for the AS-400 platform (JDK1.1.x). In that case object creation *was* very expensive so it did make sense to use object caching. I do not know about the current performance charactaristics of that platform. Second side note: GC can give you problems at times. A recent project where we made heavy use of JSTL could crash our server! There is/ are memory leak(s) in JSTL presumably the forEach tag. The strange thing was that in certain cases when the GC did a run the JVM ended up using more memory than before this run. On several servers (both on Win and Lunix) the memory usage could exeed gigabytes within one minute before crashing... That brings me to an example where caching makes a big difference. If you look
Re: [Mav-user] reusable controllers and session objects
Thanks for the tip. We did not set these contex-params. Btw, since we had our problems, there's been several reports about memory leaks in the Jakarta lists as well. It only (AFAIK) shows up with Tomcat 4.1.x. Our solution was to port the views to Velocity; three days of work and runs like a baby! Eelco - Original Message - From: Schnitzer, Jeff [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, April 02, 2003 4:10 AM Subject: RE: [Mav-user] reusable controllers and session objects From: Eelco Hillenius [mailto:[EMAIL PROTECTED] Second side note: GC can give you problems at times. A recent project where we made heavy use of JSTL could crash our server! There is/ are memory leak(s) in JSTL presumably the forEach tag. The strange thing was that in certain cases when the GC did a run the JVM ended up using more memory than before this run. On several servers (both on Win and Lunix) the memory usage could exeed gigabytes within one minute before crashing... FWIW, I haven't seen anything like this on the TSO site. There are a lot of synchronization issues in the Jakarta JSTL implementation, but I haven't seen any memory leaks yet. Make sure you explicitly set the locale and timezone context-params in web.xml - the auto-discovery process tickles a nasty synchronization bottleneck in java.util.Locale. Jeff --- This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for just $79/mo with 500 GB of bandwidth! No other company gives more support or power for your dedicated server http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ [INVALID FOOTER] --- This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for just $79/mo with 500 GB of bandwidth! No other company gives more support or power for your dedicated server http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ [INVALID FOOTER]
RE: [Mav-user] Newbie: Default transforming *.html/*.jsp or whatever
You should do stuff like this entirely different. Learn about it at: http://developer.java.sun.com/developer/Books/javaserverpages/servlets_javas erver/servlets_javaserver05.pdf Eelco Hillenius -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Jonas Van Poucke Sent: maandag 24 februari 2003 17:19 To: [EMAIL PROTECTED] Subject: [Mav-user] Newbie: Default transforming *.html/*.jsp or whatever Hi, I have a question on doing the following: 1. If a command exists in maverick, execute it 2. If it does not exist, e.g. for MyPage.html then do: a. Load theat page (DocumentView) b. perform any default transformation (e.g. like stripping out any attributes on some tag, using XSLT) c. Show the transformed document. It seems that two things are missing: 1. Reading in any *.extension command 2. Views need a path attribute, but something like path=. (taking the command as a path) does not work. To summarize, I would need something like: commands command name=*.html view name=success type=document path=. transform type=xslt path=DoSomethingWithHTML.xsl/ /view /command /commands Is there something to support this already? Do I need to create my own View? Or modify DispathedViewFactory? Any help welcome! Jonas Van Poucke Actonomy --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf [INVALID FOOTER] --- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf [INVALID FOOTER]
RE: [Mav-user] Model doesn't get initialized?
If you want to use property test, TestController should have that property: public class TestController extends ThrowawayBean2 { private String name; private String test; public String getname() { return this.name; } public void setname(String s) { this.name = s; } public String Perform() { test = blah; return success; } public String getTest() { return test }; } or just try c:out value=${model} / to see if your model was set properly. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Stephan Visser Sent: donderdag 20 februari 2003 12:02 To: '[EMAIL PROTECTED]' Subject: [Mav-user] Model doesn't get initialized? Hi there! I am trying to create a simple example application, using the friendbook as an example. The framework seems to work fine, including LOG4J. I do have a lot of problems when I try to get a controller to work. I have something like this: package com.maverick.controllers; import org.infohazard.maverick.ctl.ThrowawayBean2; public class TestController extends ThrowawayBean2 { private String name; public String getname() { return this.name; } public void setname(String s) { this.name = s; } public String Perform() { return success; } } In the maverick.xml I have something like this: command name=submitname controller class=com.maverick.controllers.TestController / view name=success path=testform.jsp/ /command In my testform.jsp I try to read the value from the model like so: c:out value=${model.test} / ...and now for the weird part (and also my question) NOTHING comes out of the model! Am I overseeing something or doing something wrong?? I spent an entire evening trying to figure out how to get this to work, no success. I even tried to explicitly fill the model in the controller using the setModel method nothing happens I have absolutely no clue ... can anybody help me? Thanks in advance! Stephan. --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER]
RE: [Mav-user] Model doesn't get initialized?
Try setting a breakpoint in: public void go(ViewContext vctx) throws IOException, ServletException { // Should we put the null in the collection? if (vctx.getModel() != null) this.setAttribute(vctx); // Call the aggregated view now handles the JSP rendering now that // we have set up the bean correctly. this.forward.go(vctx); } class: org.infohazard.maverick.view.DocumentView. Or... one of the other views if you're using it. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Stephan Visser Sent: donderdag 20 februari 2003 12:28 To: '[EMAIL PROTECTED]' Subject: RE: [Mav-user] Model doesn't get initialized? Sorry for the typo there It should have read name, not test I tried to find out the contents of the model just before leaving the controller it has been set properly, but from the JSP there is nothing... Stephan. -Original Message- From: Eelco Hillenius [mailto:[EMAIL PROTECTED]] Sent: donderdag 20 februari 2003 12:09 To: [EMAIL PROTECTED] Subject: RE: [Mav-user] Model doesn't get initialized? If you want to use property test, TestController should have that property: public class TestController extends ThrowawayBean2 { private String name; private String test; public String getname() { return this.name; } public void setname(String s) { this.name = s; } public String Perform() { test = blah; return success; } public String getTest() { return test }; } or just try c:out value=${model} / to see if your model was set properly. Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Stephan Visser Sent: donderdag 20 februari 2003 12:02 To: '[EMAIL PROTECTED]' Subject: [Mav-user] Model doesn't get initialized? Hi there! I am trying to create a simple example application, using the friendbook as an example. The framework seems to work fine, including LOG4J. I do have a lot of problems when I try to get a controller to work. I have something like this: package com.maverick.controllers; import org.infohazard.maverick.ctl.ThrowawayBean2; public class TestController extends ThrowawayBean2 { private String name; public String getname() { return this.name; } public void setname(String s) { this.name = s; } public String Perform() { return success; } } In the maverick.xml I have something like this: command name=submitname controller class=com.maverick.controllers.TestController / view name=success path=testform.jsp/ /command In my testform.jsp I try to read the value from the model like so: c:out value=${model.test} / ...and now for the weird part (and also my question) NOTHING comes out of the model! Am I overseeing something or doing something wrong?? I spent an entire evening trying to figure out how to get this to work, no success. I even tried to explicitly fill the model in the controller using the setModel method nothing happens I have absolutely no clue ... can anybody help me? Thanks in advance! Stephan. --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER]
RE: [Mav-user] Model doesn't get initialized?
Do you know about the JavaBean spec? This is pretty standard Java stuff... Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Stephan Visser Sent: donderdag 20 februari 2003 12:54 To: '[EMAIL PROTECTED]' Subject: RE: [Mav-user] Model doesn't get initialized? Ok.. I got a bit further now (it actually works) but I am still confused... I did the following to my example-code: - Renamed Perform() to perform() (wh!!) - Added to the perform method: this.setName(this.getCtx().getRequest().getParameter(first_name)); Now, I discovered that in my class I actually have a private String Name (mind the capital N!) From the JSP I can get to the value through c:out value=${model.name}/ and NOT through c:out value=${model.Name}/. is that behaviour I should expect? Anyway, it works now and for the time being I'll just keep all my fields lowercase to not get mixed up with the $model references from the JSP's Stephan. -Original Message- From: Catalin Constantin [mailto:[EMAIL PROTECTED]] Sent: donderdag 20 februari 2003 12:09 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Model doesn't get initialized? try c:out value=${model.name} / in the .jsp file Catalin - Original Message - From: Stephan Visser To: '[EMAIL PROTECTED]' Sent: Thursday, February 20, 2003 1:02 PM Subject: [Mav-user] Model doesn't get initialized? Hi there! I am trying to create a simple example application, using the friendbook as an example. The framework seems to work fine, including LOG4J. I do have a lot of problems when I try to get a controller to work. I have something like this: package com.maverick.controllers; import org.infohazard.maverick.ctl.ThrowawayBean2; public class TestController extends ThrowawayBean2 { private String name; public String getname() { return this.name; } public void setname(String s) { this.name = s; } public String Perform() { return success; } } In the maverick.xml I have something like this: command name=submitname controller class=com.maverick.controllers.TestController / view name=success path=testform.jsp/ /command In my testform.jsp I try to read the value from the model like so: c:out value=${model.test} / ...and now for the weird part (and also my question) NOTHING comes out of the model! Am I overseeing something or doing something wrong?? I spent an entire evening trying to figure out how to get this to work, no success. I even tried to explicitly fill the model in the controller using the setModel method nothing happens I have absolutely no clue ... can anybody help me? Thanks in advance! Stephan. --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER] --- This SF.net email is sponsored by: SlickEdit Inc. Develop an edge. The most comprehensive and flexible code editor you can use. Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial. www.slickedit.com/sourceforge [INVALID FOOTER]
Re: [Mav-user] Model doesn't get initialized?
Stephan, To be short, the basic idea for JavaBeans is that if you have a property, it starts with a (usually) private or protected defined field. In order to grant access on your 'bean' to the outside world, It should have a 'getter' and/ or a 'setter'; resp. to allow reading and writing of the field. The standard says that a getter be of form: 'getXxx' where where the Xxx stands for the name of the property, the first character (right after 'get') being capitalised. An exception to 'getXxx' is the reading of a boolean value, which should have the form 'isXxx'. This is the only exception. The setters take form: 'setXxx'. As '$model.name' tries to find property name, JSTL will look for the method .getName() in your class. If it's not there it will fail (I don't know and actually don't care about the case when your field is declared public). Read more about it: ftp://ftp.javasoft.com/docs/beans/beans.101.pdf Another thing to know about Java are the code conventions: http://java.sun.com/docs/codeconv/html/CodeConventions.doc8.html And... before doing anything else, please read at least: http://java.sun.com/docs/books/tutorial/java/index.html. Eelco - Original Message - From: Stephan Visser [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, February 20, 2003 8:05 PM Subject: RE: [Mav-user] Model doesn't get initialized? So, if I understand you correctly, I should expect the following behaviour: I have a controller class Foo with a String Name and in a JSP that gets activated as a view I have to use $model.name (with lowercase name i.s.o. Name as defined in the class) ?? If the JavaBean specs (which I'm sorry I'm not familiar with) state this behaviour as standard I't fine by me. Still, I find it pretty confusing... Stephan. -Original Message- From: Vladimir Yusseem [mailto:[EMAIL PROTECTED]] Sent: donderdag 20 februari 2003 19:49 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Model doesn't get initialized? Also Java seemed to be case sensetive ... :-). - Original Message - From: Eelco Hillenius [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, February 20, 2003 8:53 AM Subject: RE: [Mav-user] Model doesn't get initialized? Do you know about the JavaBean spec? This is pretty standard Java stuff... Eelco -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Stephan Visser Sent: donderdag 20 februari 2003 12:54 To: '[EMAIL PROTECTED]' Subject: RE: [Mav-user] Model doesn't get initialized? Ok.. I got a bit further now (it actually works) but I am still confused... I did the following to my example-code: - Renamed Perform() to perform() (wh!!) - Added to the perform method: this.setName(this.getCtx().getRequest().getParameter(first_name)); Now, I discovered that in my class I actually have a private String Name (mind the capital N!) From the JSP I can get to the value through c:out value=${model.name}/ and NOT through c:out value=${model.Name}/. is that behaviour I should expect? Anyway, it works now and for the time being I'll just keep all my fields lowercase to not get mixed up with the $model references from the JSP's Stephan. -Original Message- From: Catalin Constantin [mailto:[EMAIL PROTECTED]] Sent: donderdag 20 februari 2003 12:09 To: [EMAIL PROTECTED] Subject: Re: [Mav-user] Model doesn't get initialized? try c:out value=${model.name} / in the .jsp file Catalin - Original Message - From: Stephan Visser To: '[EMAIL PROTECTED]' Sent: Thursday, February 20, 2003 1:02 PM Subject: [Mav-user] Model doesn't get initialized? Hi there! I am trying to create a simple example application, using the friendbook as an example. The framework seems to work fine, including LOG4J. I do have a lot of problems when I try to get a controller to work. I have something like this: package com.maverick.controllers; import org.infohazard.maverick.ctl.ThrowawayBean2; public class TestController extends ThrowawayBean2 { private String name; public String getname() { return this.name; } public void setname(String s) { this.name = s; } public String Perform() { return success; } } In the maverick.xml I have something like this: command name=submitname controller class=com.maverick.controllers.TestController / view name=success path=testform.jsp/ /command In my testform.jsp I try to read the value from the model like so: c:out value=${model.test} / ...and now for the weird part (and also my question) NOTHING comes out of the model! Am I overseeing something or doing something wrong?? I spent an entire evening trying to figure out how to get this to work, no success. I even tried to explicitly fill the model in the controller using the setModel method nothing happens I have
Re: [Mav-user] server side redirects for commands
Thanks for pointing that out Jeff, You are right about the difference between redirects and forwards ofcourse, and now that I took a closer look at the code, I understand the flow. I was just looking at the friendbook example and thought that using redirects was the way to link commands in Maverik fashion. Maybe it's a good idea to adjust the friendbook example, so that the differences in usage (redirect/ forward) become clear. This is currently in the friendbook example: command name=logout controller class=org.infohazard.friendbook.ctl.Logout/ view name=loginRequired ref=loginRequired/ view name=loginFailed ref=loginFailed/ view name=success type=redirect path=welcome.m/ /command Instead something like this would clearify things: command name=logout controller class=org.infohazard.friendbook.ctl.Logout/ view name=loginRequired ref=loginRequired/ view name=loginFailed ref=loginFailed/ !-- use a redirect (HTTP 302 response) parameters set in the ControllerContext will be made available to the view in the form of request parameters Note that only string parameters will make sense -- view name=success type=redirect path=welcome.m/ !-- if you want to do a forward (server side) you can use view name=success type=document path=welcome.m/ instead. Using this will save you a client server roundtrip, and you can use arbitrary objects as request parameters, and you will have access to the model set by the last command). Note that if you access the model , and that model is a command, you create a dependency of commands and loose the freedom freely linking commands without them knowing about each other. If you use parameters in the ControllerContext, or you use a common command-neutral model, you just have a 'contract-like' dependency. -- /command I understand that you can do neat stuff with inheritance. On the other hand, I think it is nice to make commands (potentially) work together without requiring them to use a common base class. A contract (command requires certain variables to be available) couples loosely. But, hey... the nice thing about Maverik is that you can decide yourself! Thanks for the quick response, Eelco Hillenius - Original Message - From: Schnitzer, Jeff [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, February 11, 2003 2:24 AM Subject: RE: [Mav-user] server side redirects for commands The word you are looking for is a forward, not a redirect. Redirects are inherently client-side phenomenon; they are the result of an HTTP 302 response. Inside the server, you forward from one request to another. In fact, this is how Maverick executes JSPs (or other documents) - using the forward mechanism. Try this: view name=simpleReport type=document path=showSimpleReport.m/ This chains the first command to the second. Any params are persisted across the invocation... and if you're careful about your controller base class, you can get access to the model as well. Jeff Schnitzer [EMAIL PROTECTED] -Original Message- From: Eelco Hillenius [mailto:[EMAIL PROTECTED]] Sent: Monday, February 10, 2003 2:40 PM To: [EMAIL PROTECTED] Subject: [Mav-user] server side redirects for commands Hi all, Say, I have got a view like: view name=simpleReport type=redirect path=showSimpleReport.m/ (I use .m for Maverik commands). The current version of Maverik does a normal redirect (response.sendRedirect). Imho it would be great if Maverik would recognize that it is about to redirect to another Maverik command, and instead of doing a real redirect, call that other command. And instead of making a string copy of the objects in the context (stored like getCtx().setParam(blah, obj)) to request parameters, make (or keep) the objects available in their original form. I have got the case that I want to do a redirect to another command. For this other command I have some object (which is not of type string!) available in my first/ calling command. Right now the only way that I can expose arbitrary objects from the first command to the second command is by using session objects (or something similar), which is not *that* handy. Besides my own little problem (I already implemented the workaround), I think doing a 'server side' redirect is better because it saves a client-server roundtrip. Better because it it more efficient, and because it does not expose variables meant for internal use (which is allways the case if command1 calls command2?). Well, what do you all think? Cheers, Eelco Hillenius --- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com [INVALID FOOTER] --- This SF.NET email is sponsored by: SourceForge Enterprise
Re: [Mav-user] Interesting MVC post
Although the refered piece makes sense I can think of some pro-MVC defences: You *never* have multiple simultaneous controls or views to worry about I would not say never. Think about portal-like functionality. Sure in the end (the complete webpage) it is just one view, but is'nt that the same for most GUI apps (one total window)? Actually I'd like to look at my webapps as a composition of elements that have their own view and can all have different controllers. BTW.. this can be done by including commands like this: c:import url=http://wholepathtoserver:port/cmd.m/ it won't work with a relative path (like c:import url=cmd.m) in Maverik (see one of my earlier posts). Your application, be it a CGI script, mod_perl handler, or even an all-in-one embedded Perl template, receives one and only one request for any one invocation, and it must generate one and only one response. Depends on how you look at it... see above. Flow of control is linear and predicatable. In the end it allways is, or is the author using random processing ;-) Desktop MVC applications are typically single-user and the in-memory model persists for a session (e.g. while the application is running). In contrast, web applications are multi-user, and in most cases, the per-user model is regenerated on each request (i.e. by restoring a user's session data from a database on each request). Mem model and single/ multiple user problems are IMHO not part of the problem that MVC solves. And the model is regenerated? What does it matter where I get the model from? There are other differences: controllers are inputs, not chunks of application code as they are portrayed in many web application frameworks; presentation elements can safely contain programming code, as long as it's presentation programming, not application programming; the model is the application state, not the application architecture, and so on. Agreed. I see this a lot in web apps that use MVC frameworks. If you want to just display something of your model, just code it in your JSP, maybe using a null command (so that you can still do nice transforms). I think Maverik does a good job (better then some other frameworks) at providing a clean architecture to solve above problems. I have come to the conclusion that most people who talk about MVC in regard to web application design don't properly understand what it is We work with design patterns to have a common basis of communication. Just consider talking about MVC in the context of web applications talking in a different accent. We globally mean the same as the traditional GUI guys, but have some small interpretation differences. I am pretty sure that most experienced programmers talking about MVC in a web context understand how the pattern works in their context. On the other hand... maybe we (programmers after the Smalltalk age?) are all just darn ignorant, and should lean from our coding ancestors ;-) (uh, sorry that was not very nice...) I think the author is right as well when he says that MVC does not solve all your problems (surprise, surprise). But it *does* give the community a nice proven method to make our webapps a bit less messy. Eelco Hillenius - Original Message - From: Roman Petrov [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, February 11, 2003 11:26 AM Subject: [Mav-user] Interesting MVC post What people think about this post? http://lists.ourshack.com/pipermail/templates/2002-November/003974.html I think it's incorrect to say MVC for any web framework. WebMVC? --- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com [INVALID FOOTER] --- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com [INVALID FOOTER]
Re: [Mav-user] server side redirects for commands
Ok, I guess the example with the "bye" view doesn't make much sense.I have got a working case where I use it. Check out: http://financialtools.nl:8080/euronorm/renderq.m?collection=questionsdefinitionId=hijsbanden It'sin dutch language,and very much in progress (not sure for how long this site will be up, but probably at least this week), but just answer a few questions, and you should end up with a pdf. The site uses the following config (excerpt): command name="getanswer" controller class="nl.topicus.euronorm.net.questions.ui.GetAnswerCtrl"/ view name="success" path="questions/renderquestion.jsp" transform path="mlayout/bodyLayout.jsp"/ transform path="mlayout/standardLayout.jsp"/ /view view name="simpleReport" path="showSimpleReport.m"//command command name="showSimpleReport" controller class="nl.topicus.euronorm.net.questions.ui.ShowSimpleReportCtrl" param name="reportPath" value="${rootdir}/WEB-INF/resources/reports"/ /controller view name="success" type="null"//command In the getanswer command I store theuser choice forlater use, and try to find the next question based on the choice. If I am on the end of a series of questions, I am ready todisplay a report, based on the given answers/ made choices.I just implemented an simple approach (showSimpleReport) to rendering a report,that tries to find a pdf file inthe repositoryfollowinging a certain naming (like, if you answered a,b and a,I try to find [report-name]-aba.pdf). If I find the file, I'll send it tothe servlet outputstream directely (at this time..., will probably change this week), hence view with type null. So, in the above example, I have command 'getanswer' that hasthe behavouir of storing user choices and loading the next question. If I find that I am on the end of the question chain, I want toforward to a 'report renderer', and let this renderer do its work.Seperation of concerns. This works very well for me, and allthough I can do this ina number different ways without chaining, this is what I like best. The danger would be that you (or I for that matter) would end up making a one-size-fits-all comand before you know it. But... if you think there's a much better way of doing this... I'm allway opento suggestions. Cheers, Eelco Hillenius - Original Message - From: "Schnitzer, Jeff" [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, February 11, 2003 10:20 PM Subject: RE: [Mav-user] server side redirects for commands While supporting the concept is important, I'm not personally convinced*yet* that controller chaining has enormous merit. So far I haven'tseen a compelling need for it in my work. Certainly in the case of thefriendbook logout, a redirect is fully appropriate in order to preservethe browser's ability to bookmark links. Even if you wanted to provide a more sophisticated "bye" page instead ofjust sending the user back to the welcome page, it seems to me thatyou're best off putting the controller logic in the Logout class andforwarding to a normal "bye" view.But I'm open to different views - John-Mason Shackelford seems to beputting a lot of effort into the subject, and I'm curious to know howthat goes :)Jeff Schnitzer[EMAIL PROTECTED] -Original Message- From: Eelco Hillenius [mailto:[EMAIL PROTECTED]] Sent: Tuesday, February 11, 2003 1:31 AM To: [EMAIL PROTECTED] Subject: Re: [Mav-user] server side redirects for commands Thanks for pointing that out Jeff, You are right about the difference between redirects and forwards ofcourse, and now that I took a closer look at the code, I understand the flow.I was just looking at the friendbook example and thought that usingredirects was the way to link commands in Maverik fashion. Maybe it's a good idea to adjust the friendbook example, so that the differences in usage(redirect/ forward) become clear. This is currently in the friendbook example: command name="logout" controller class="org.infohazard.friendbook.ctl.Logout"/ view name="loginRequired" ref="loginRequired"/ view name="loginFailed" ref="loginFailed"/ view name="success" type="redirect" path="welcome.m"/ /command Instead something like this would clearify things: command name="logout" controller class="org.infohazard.friendbook.ctl.Logout"/ view name="loginRequired" ref="loginRequired"/ view name="loginFailed" ref="loginFailed"/ !-- use a redirect (HTTP 302 response) parameters set in the ControllerContext will be madeavailable to the view in the form of request parameters Note that only string parameters will make sense -- view name="success" type="redirect"
[Mav-user] server side redirects for commands
Hi all, Say, I have got a view like: view name=simpleReport type=redirect path=showSimpleReport.m/ (I use .m for Maverik commands). The current version of Maverik does a normal redirect (response.sendRedirect). Imho it would be great if Maverik would recognize that it is about to redirect to another Maverik command, and instead of doing a real redirect, call that other command. And instead of making a string copy of the objects in the context (stored like getCtx().setParam(blah, obj)) to request parameters, make (or keep) the objects available in their original form. I have got the case that I want to do a redirect to another command. For this other command I have some object (which is not of type string!) available in my first/ calling command. Right now the only way that I can expose arbitrary objects from the first command to the second command is by using session objects (or something similar), which is not *that* handy. Besides my own little problem (I already implemented the workaround), I think doing a 'server side' redirect is better because it saves a client-server roundtrip. Better because it it more efficient, and because it does not expose variables meant for internal use (which is allways the case if command1 calls command2?). Well, what do you all think? Cheers, Eelco Hillenius --- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com [INVALID FOOTER]