Re: Custom component validation - two fields
Hello, I think figured out my problem - I needed to render the html template in rewindFormComponent! It was right in front of me the entire time. -Ryan On Jun 3, 2006, at 3:40 PM, Ryan Cuprak wrote: I think I follow. So you only display the TextField if the checkbox was checked (via refresh submit)? I plowed ahead with trying to implement my own AbstractFormComponent that would use an html template and also render some of its own content. However, I am getting a stale link exception when I submit. Either I am setting something up incorrectly or missing the boat on the rewind. Not exactly sure how to parse the StaleLink page. Been diving through the list archives and source trying to get a better idea on how component ids are generated and the rewind is done. I can create a new form component re-using other form components - right? To read the template I yanked code out of the BaseComponent class. In the end, I want my custom component to display a checkbox and a textfield (possibly a PropertySelection as well). When the form is submitted, if the checkbox is checked but no content is contained in the textfield I want to decorate it and add a message to the top. This component will be used at least a dozen time on the page for different search parameters. Gradually learning! Thanks, Ryan Exception: --- You have clicked on a stale link. Rewind of form test/testForm expected 1 more form elements, starting with id 'selected'. This is most likely the result of using your browser's back button, but can also be an application error. Component Java code: --- public abstract class ComboTest extends AbstractFormComponent implements ITemplateComponent { private static Logger logger = Logger.getLogger(ComboTest.class); private static final int OUTER_INIT_SIZE = 5; private IRender[] _outer; private int _outerCount = 0; public ComboTest() { } public abstract boolean isSelected(); public void readTemplate(IRequestCycle cycle, IPageLoader loader) { loader.loadTemplateForComponent(cycle,this); } protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle) { logger.debug("being combotest render"); // this was an attempt to solve it, thought maybe it was missing the id for this component (this didn't work.) writer.begin("input"); writer.attribute("type","hidden"); writer.attribute("name",getName()); writer.attribute("id",getName()); writer.end(); for(int i =0; i < _outerCount; i++) { _outer[i].render(writer,cycle); } logger.debug("end combotest render"); } protected void rewindFormComponent(IMarkupWriter writer, IRequestCycle cycle) { logger.debug("combotest choosen: choosen: " + cycle.getParameter(getName())); } public void finishLoad(IRequestCycle cycle , IPageLoader loader , IComponentSpecification specification) { logger.debug("finishing load"); readTemplate(cycle,loader); super.finishLoad(cycle,loader,specification); } public void addOuter(IRender element) { logger.debug("outer being rendered"); if(_outer == null) { _outer = new IRender[OUTER_INIT_SIZE]; _outer[0] = element; _outerCount = 1; return; } if (_outerCount == _outer.length) { IRender[] newOuter; newOuter = new IRender[_outer.length*2]; System.arraycopy(_outer,0,newOuter,0,_outerCount); _outer = newOuter; } _outer[_outerCount++] = element; } } HTML Template: --- Test Template: --- class="com.kodak.mis.web.components.ComboTest" allow-informal-parameters="yes" allow-body="no"> On Friday, June 02, 2006, at 12:38PM, Mark Stang <[EMAIL PROTECTED]> wrote: What we do is to wrap the checkbox in an AnySubmit. And then when checked a submit happens and the field is then displayed with whatever mark-up is required. If the user attempts to leave the screen standard edits tell them they need to provide a value. If they uncheck the box, the field goes away. Basically, it is done via a Conditional or Choose Component. hth, Mark -Original Message- From: Ryan Cuprak [mailto:[EMAIL PROTECTED] Sent: Fri 6/2/2006 12:38 PM To: users@tapestry.apache.org Subject: Custom component validation - two fields Hello, We are trying to implement a rather simple custom form component for a search page and perform validation on it. The custom component has a checkbox and a text field. If the checkbox is checked then a value must be provided in the text field. If not, the field must be decorated and a message displayed at the top of the form (tie in with the delegate etc). What is the recom
RE: Border question
Andreas, Sorry, I am using a web front-end for my e-mail and it just wraps. I will try and match your layout :-). As Jesse said, there are some existing components, but there are times where the existing ones don't meet your requirements. In our first release (2.0) we had our menus down the side. However, that is a bit of a problem. How do you handle the situation where someone has an option open and they click another option. There are several solutions to this problem: 1) Gray out the other ones. 2) You could warn them that they are going to lose their changes. 3) Or you retain all of their data and when they click back it is still there. In our 2.0 product the user lost all changes. We had an HTML guy who did not believe in "Cancel". In our 3.x product, you either cancel from where you are or "save" off your changes to back out. And "save" is not really true, we only "save" in one place. So at each "level" the user clicks "Done". The issue with either down the side or even across the top is you are building a tree structure. The question is what "Mouse" operations are available to the user and how do you respond if they have keyed in data? Lose it? Prompt them? Or save it off for now. With menus across the top, you still have the same issues. How many "levels" are you showing the user at one time? And can they jump there? If you think about your menu structure, you are really creating a Tree Structure. So, the question is how do you display it to the user and when they see it what can they click on? And what happens to the data that is there when they click somewhere else? We build our entire tree structure in memory. We don't traverse "pages" we traverse the tree. In our tree, each branch has nodes and those nodes store data in memory. So, we can have 130 nodes (pages) in memory at any point in time. If the user cancels, we throw them away. If they hit the "Save" button, we walk the tree, populate a structure and write it to disk. Our "menu" is internal to our data. If you pick a different path say change from Basic Auth to SSL, then the "menu" changes. So, we don't have an actual menu in a file somewhere. So, from a storage point of view, I don't know if XML vs. a database is really different. I think it depends on your comfort with maintenance of both. How will you populate the database for a menu? And more important how do you link the pages together? Most people would like to just hard-code them. Which work just fine until it doesn't. At some point, you will have an if statement that says go to page 3 if A or go to page 4 if B. Static external menus is fine as long as you don't want the options to be configurable. Menus are not as simple as people would like to think. I think that it starts to become more complex and what you end up with is a Finite State Machine (FSM). And the FSM defines the relationships between the pages. hth, Mark -Original Message- From: Andreas Bulling on behalf of Andreas Bulling Sent: Sat 6/3/2006 8:44 AM To: Tapestry users Subject: Re: Border question Hi Mark, first, a short notice: No offence, but could you please insert linebreaks in your answers as its quite time-consuming to break them manually (for example when using mutt) to be able to answer directly to your statements - thanks ;) | The question is are you trying | to define a generic menu component that can be "populated" with the links between the pages or are | you trying to create a project specific menu component that only has to work with your existing pages? Well, for sure the best would be to have a generic component capable of displaying an arbitrary set of pages and their structure as a menu... I don't know, I think at the moment a project-specific menu component should be enough. | Then the next question is what does it look like visually? Is it down the left side or across the top? Both ;) | If it is nested then each one would have it's list of pages. Which I think would support menus within menus. | As part of the "menu" component you would pass in a list of Menu Options and for each option a "Destionation Page". | If you take a step back, this is a tree structure. So, it could be stored in a database or an XML file. Or it could be | hard-coded in the supporting classes. The component itself could genereate different HTML/JavaScript as needed. | I would start by creating one manually to see how it works and how the L&F works. Then I would generalize it from there. What do you think is the "best": external XML, database oder hard-coded? What did you use for your menu component? Thanks! Andreas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED
RE: Custom component validation - two fields
I think I follow. So you only display the TextField if the checkbox was checked (via refresh submit)? I plowed ahead with trying to implement my own AbstractFormComponent that would use an html template and also render some of its own content. However, I am getting a stale link exception when I submit. Either I am setting something up incorrectly or missing the boat on the rewind. Not exactly sure how to parse the StaleLink page. Been diving through the list archives and source trying to get a better idea on how component ids are generated and the rewind is done. I can create a new form component re-using other form components - right? To read the template I yanked code out of the BaseComponent class. In the end, I want my custom component to display a checkbox and a textfield (possibly a PropertySelection as well). When the form is submitted, if the checkbox is checked but no content is contained in the textfield I want to decorate it and add a message to the top. This component will be used at least a dozen time on the page for different search parameters. Gradually learning! Thanks, Ryan Exception: --- You have clicked on a stale link. Rewind of form test/testForm expected 1 more form elements, starting with id 'selected'. This is most likely the result of using your browser's back button, but can also be an application error. Component Java code: --- public abstract class ComboTest extends AbstractFormComponent implements ITemplateComponent { private static Logger logger = Logger.getLogger(ComboTest.class); private static final int OUTER_INIT_SIZE = 5; private IRender[] _outer; private int _outerCount = 0; public ComboTest() { } public abstract boolean isSelected(); public void readTemplate(IRequestCycle cycle, IPageLoader loader) { loader.loadTemplateForComponent(cycle,this); } protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle) { logger.debug("being combotest render"); // this was an attempt to solve it, thought maybe it was missing the id for this component (this didn't work.) writer.begin("input"); writer.attribute("type","hidden"); writer.attribute("name",getName()); writer.attribute("id",getName()); writer.end(); for(int i =0; i < _outerCount; i++) { _outer[i].render(writer,cycle); } logger.debug("end combotest render"); } protected void rewindFormComponent(IMarkupWriter writer, IRequestCycle cycle) { logger.debug("combotest choosen: choosen: " + cycle.getParameter(getName())); } public void finishLoad(IRequestCycle cycle , IPageLoader loader , IComponentSpecification specification) { logger.debug("finishing load"); readTemplate(cycle,loader); super.finishLoad(cycle,loader,specification); } public void addOuter(IRender element) { logger.debug("outer being rendered"); if(_outer == null) { _outer = new IRender[OUTER_INIT_SIZE]; _outer[0] = element; _outerCount = 1; return; } if (_outerCount == _outer.length) { IRender[] newOuter; newOuter = new IRender[_outer.length*2]; System.arraycopy(_outer,0,newOuter,0,_outerCount); _outer = newOuter; } _outer[_outerCount++] = element; } } HTML Template: --- Test Template: --- On Friday, June 02, 2006, at 12:38PM, Mark Stang <[EMAIL PROTECTED]> wrote: >What we do is to wrap the checkbox in an AnySubmit. And then when checked a >submit happens and the field is then displayed with whatever mark-up is >required. If the user attempts to leave the screen standard edits tell them >they need to provide a value. If they uncheck the box, the field goes away. >Basically, it is done via a Conditional or Choose Component. > >hth, > >Mark > > >-Original Message- >From: Ryan Cuprak [mailto:[EMAIL PROTECTED] >Sent: Fri 6/2/2006 12:38 PM >To: users@tapestry.apache.org >Subject: Custom component validation - two fields > >Hello, > We are trying to implement a rather simple custom form component for a search > page and perform validation on it. The custom component has a checkbox and a > text field. If the checkbox is checked then a value must be provided in the > text field. If not, the field must be decorated and a message displayed at > the top of the form (tie in with the delegate etc). What is the recommended > approach for implementing such component validation? Must we extend > AbstractFormComponent and implement the renderFormComponent or is there a > simpler approach? Is there a hybrid AbstractFormComponent/BaseComponent we > have missed somehow? > > Thanks! > Ryan > >- >To unsubscribe, e-mail: [
Re: Tapernate-example and the former jars
On 03. Jun 2006 - 12:22:16, James Carman wrote: | Okay, that's weird. I apologize for all the confusion. But, getting used | to Maven2 is not quite as easy as I had hoped. It's tough to figure out | exactly where everything is going during the build. No problem, it's weekend and I have enough time to convert my application to the new Tapernate version... ;) | Anyway, the war that's | out there in my maven repo works on my machine by just dropping it in a | Tomcat installation's webapps directory. Let me know if it works for you. Nope, I just installed the war in my local Tomcat installation but I get the following exception: root cause: org.apache.hivemind.ApplicationRuntimeException: Unable to construct service hivemind.hibernate3.SessionFactory: Hibernate Dialect must be explicitly set [jar:file:/home/andreas/apache-tomcat/webapps/tapernate-example-0.1/WEB-INF/lib/hivemind-hibernate3-0.1-20060603.130015-5.jar!/META-INF/hivemodule.xml, line 46, column 61] org.apache.hivemind.impl.servicemodel.AbstractServiceModelImpl.constructNewServiceImplementation(AbstractServiceModelImpl.java:166) org.apache.hivemind.impl.servicemodel.AbstractServiceModelImpl.constructServiceImplementation(AbstractServiceModelImpl.java:140) org.apache.hivemind.impl.servicemodel.SingletonServiceModel.getActualServiceImplementation(SingletonServiceModel.java:69) $SessionFactory_10b9abe4d86._service($SessionFactory_10b9abe4d86.java) $SessionFactory_10b9abe4d86.openSession($SessionFactory_10b9abe4d86.java) $SessionFactory_10b9abe4d85.openSession($SessionFactory_10b9abe4d85.java) Probably this is because I didn't provide any hivemind configuration? Anyway: As my application works again this doesn't matter anymore ;) | As for your error below, do you have two service points that support the | SessionFactory interface? If so, then HiveMind can't autowire it in, since | it doesn't know which one to choose. That's the only way I can think of | that you might not have a SessionFactory with all of the jars from the | example war file in your WEB-INF/lib directory. Sorry for the excitement: I removed everything from the hivemodule.xml file but I forgot to also remove the old libraries (spring-hibernate3 and spring-transaction) *slap* Now everything works as expected ;) Kind regards, Andreas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tapernate-example and the former jars
Okay, that's weird. I apologize for all the confusion. But, getting used to Maven2 is not quite as easy as I had hoped. It's tough to figure out exactly where everything is going during the build. Anyway, the war that's out there in my maven repo works on my machine by just dropping it in a Tomcat installation's webapps directory. Let me know if it works for you. Again, sorry for the mixups. As for your error below, do you have two service points that support the SessionFactory interface? If so, then HiveMind can't autowire it in, since it doesn't know which one to choose. That's the only way I can think of that you might not have a SessionFactory with all of the jars from the example war file in your WEB-INF/lib directory. -Original Message- From: Andreas Bulling [mailto:[EMAIL PROTECTED] On Behalf Of Andreas Bulling Sent: Saturday, June 03, 2006 11:36 AM To: Tapestry users Subject: Re: Tapernate-example and the former jars OK, thanks! ;) What I did was to remove all the old configuration stuff (Tapernate version: Even before the split of the different persistence strategies...) from my hivemodule.xml file and dropped the new tapernate/hivemind jars in. This should be enough and work, shouldn't it? I get the following exception: 17:26:51,219 ERROR [plattform]:253 - Servlet.service() for servlet meet-europeans threw exception java.lang.IllegalArgumentException: No SessionFactory specified at org.springframework.util.Assert.notNull(Assert.java:116) at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionF actoryUtils.java:294) at org.springframework.orm.hibernate3.SessionFactoryUtils.getSession(SessionFac toryUtils.java:195) at com.javaforge.tapestry.tapernate.filter.TapernateFilter.createNewSession(Tap ernateFilter.java:176) at com.javaforge.tapestry.tapernate.filter.TapernateFilter.createSession(Tapern ateFilter.java:171) at com.javaforge.tapestry.tapernate.filter.TapernateFilter.service(TapernateFil ter.java:70) at $WebRequestServicerFilter_10b9a7fb168.service($WebRequestServicerFilter_10b9 a7fb168.java) at $WebRequestServicerFilter_10b9a7fb167.service($WebRequestServicerFilter_10b9 a7fb167.java): - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tapernate-example and the former jars
OK, thanks! ;) What I did was to remove all the old configuration stuff (Tapernate version: Even before the split of the different persistence strategies...) from my hivemodule.xml file and dropped the new tapernate/hivemind jars in. This should be enough and work, shouldn't it? I get the following exception: 17:26:51,219 ERROR [plattform]:253 - Servlet.service() for servlet meet-europeans threw exception java.lang.IllegalArgumentException: No SessionFactory specified at org.springframework.util.Assert.notNull(Assert.java:116) at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionFactoryUtils.java:294) at org.springframework.orm.hibernate3.SessionFactoryUtils.getSession(SessionFactoryUtils.java:195) at com.javaforge.tapestry.tapernate.filter.TapernateFilter.createNewSession(TapernateFilter.java:176) at com.javaforge.tapestry.tapernate.filter.TapernateFilter.createSession(TapernateFilter.java:171) at com.javaforge.tapestry.tapernate.filter.TapernateFilter.service(TapernateFilter.java:70) at $WebRequestServicerFilter_10b9a7fb168.service($WebRequestServicerFilter_10b9a7fb168.java) at $WebRequestServicerFilter_10b9a7fb167.service($WebRequestServicerFilter_10b9a7fb167.java): - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tapernate-example and the former jars
1. The DataClasses configuration point doesn't exist anymore. With the "squeezer pipeline", this is unnecessary. The EntitySqueezerFilter checks to see if it can squeeze the object. If it can't it just sends it on down the line (the regular squeezer framework picks it up). 2. The transaction interceptors aren't really needed in transaction-per-request mode. -Original Message- From: Andreas Bulling [mailto:[EMAIL PROTECTED] On Behalf Of Andreas Bulling Sent: Saturday, June 03, 2006 11:23 AM To: Tapestry users Subject: Re: Tapernate-example and the former jars On 03. Jun 2006 - 10:54:22, James Carman wrote: | Well, you can just download the war file if you want... | | www.carmanconsulting.com/mvn/com/carmanconsulting/tapernate-example/0.1 | | Just unzip that and it will contain all dependencies you need. Thanks a lot, that's what I wanted! :-) Without having testet it just two short questions (as I know the different Tapernate hivemodule.xml files quite well in the meanwhile *g): 1) Is the not needed anymore? 2) Are the not needed or not available anymore? Thanks and kind regards, Andreas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tapernate-example and the former jars
On 03. Jun 2006 - 10:54:22, James Carman wrote: | Well, you can just download the war file if you want... | | www.carmanconsulting.com/mvn/com/carmanconsulting/tapernate-example/0.1 | | Just unzip that and it will contain all dependencies you need. Thanks a lot, that's what I wanted! :-) Without having testet it just two short questions (as I know the different Tapernate hivemodule.xml files quite well in the meanwhile *g): 1) Is the not needed anymore? 2) Are the not needed or not available anymore? Thanks and kind regards, Andreas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tapernate-example and the former jars
Well, you can just download the war file if you want... www.carmanconsulting.com/mvn/com/carmanconsulting/tapernate-example/0.1 Just unzip that and it will contain all dependencies you need. -Original Message- From: Andreas Bulling [mailto:[EMAIL PROTECTED] On Behalf Of Andreas Bulling Sent: Saturday, June 03, 2006 10:50 AM To: Tapestry users Subject: Re: Tapernate-example and the former jars I'm sorry but I'm totally confused now... Where do I have to download/checkout/maven what to get the precompiled jars? Thanks! Andreas On 03. Jun 2006 - 10:41:19, James Carman wrote: | Well, I've committed all my changes and published everything to my mvn | repository that is needed that you can't find on the "public" ones. Let me | know if it doesn't work for you? FYI, I changed the build to look for | ant-apt.jar at "${ant.home}/lib/ant-apt.jar". So, if you want to build the | example application, you just have to drop the ant-apt.jar file into your | ant.home/lib dir. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tapernate-example and the former jars
I'm sorry but I'm totally confused now... Where do I have to download/checkout/maven what to get the precompiled jars? Thanks! Andreas On 03. Jun 2006 - 10:41:19, James Carman wrote: | Well, I've committed all my changes and published everything to my mvn | repository that is needed that you can't find on the "public" ones. Let me | know if it doesn't work for you? FYI, I changed the build to look for | ant-apt.jar at "${ant.home}/lib/ant-apt.jar". So, if you want to build the | example application, you just have to drop the ant-apt.jar file into your | ant.home/lib dir. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Border question
Hi Mark, first, a short notice: No offence, but could you please insert linebreaks in your answers as its quite time-consuming to break them manually (for example when using mutt) to be able to answer directly to your statements - thanks ;) | The question is are you trying | to define a generic menu component that can be "populated" with the links between the pages or are | you trying to create a project specific menu component that only has to work with your existing pages? Well, for sure the best would be to have a generic component capable of displaying an arbitrary set of pages and their structure as a menu... I don't know, I think at the moment a project-specific menu component should be enough. | Then the next question is what does it look like visually? Is it down the left side or across the top? Both ;) | If it is nested then each one would have it's list of pages. Which I think would support menus within menus. | As part of the "menu" component you would pass in a list of Menu Options and for each option a "Destionation Page". | If you take a step back, this is a tree structure. So, it could be stored in a database or an XML file. Or it could be | hard-coded in the supporting classes. The component itself could genereate different HTML/JavaScript as needed. | I would start by creating one manually to see how it works and how the L&F works. Then I would generalize it from there. What do you think is the "best": external XML, database oder hard-coded? What did you use for your menu component? Thanks! Andreas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tapernate-example and the former jars
Well, I've committed all my changes and published everything to my mvn repository that is needed that you can't find on the "public" ones. Let me know if it doesn't work for you? FYI, I changed the build to look for ant-apt.jar at "${ant.home}/lib/ant-apt.jar". So, if you want to build the example application, you just have to drop the ant-apt.jar file into your ant.home/lib dir. -Original Message- From: James Carman [mailto:[EMAIL PROTECTED] Sent: Saturday, June 03, 2006 9:35 AM To: 'Tapestry users' Subject: RE: Tapernate-example and the former jars Andreas, I am in the process of moving stuff around on my server. The new poms will reflect the changes. Sorry for the inconvenience. I need to test in a clean local repository to assure that we're good to go. More in a bit... James -Original Message- From: Andreas Bulling [mailto:[EMAIL PROTECTED] On Behalf Of Andreas Bulling Sent: Saturday, June 03, 2006 9:29 AM To: Tapestry users Subject: Re: Tapernate-example and the former jars | The tapernate-example application (downloadable via SVN at | http://www.carmanconsulting.com/svn/public/tapernate-example/trunk/) has | been "mavenized" to reflect the dependencies. You can download it and copy | all the jars that it copies into the war (run mvn war:war) in your own | application. OK, so I checked tapernate-example out with subversion and changed to the "trunk" subdirectory. Running mvn war:war returns: mvn -e war:war + Error stacktraces are turned on. [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'war'. [INFO] org.apache.maven.plugins: checking for updates from cc-repo [WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: cc-repo due to an error: Error transferring file [INFO] Repository 'cc-repo' will be blacklisted [INFO] org.apache.maven.plugins: checking for updates from central [WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: central due to an error: Error transferring file [INFO] Repository 'central' will be blacklisted [INFO] [ERROR] BUILD ERROR [INFO] [INFO] The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found [INFO] [INFO] Trace org.apache.maven.lifecycle.LifecycleExecutionException: The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLife cycleExecutor.java:1247) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.getMojoDescriptor(Defaul tLifecycleExecutor.java:1430) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.segmentTaskListByAggrega tionNeeds(DefaultLifecycleExecutor.java:378) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycle Executor.java:134) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115) at org.apache.maven.cli.MavenCli.main(MavenCli.java:249) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.version.PluginVersionNotFoundException: The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVer sion(DefaultPluginVersionManager.java:225) at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVer sion(DefaultPluginVersionManager.java:87) at org.apache.maven.plugin.DefaultPluginManager.verifyPlugin(DefaultPluginManag er.java:160) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLife cycleExecutor.java:1218) ... 14 more [INFO] [INFO] Total time: 1 second [INFO] Finished at: Sat Jun 03 13:28:35 GMT 2006 [INFO] Final Memory: 1M/2M [INFO] ---
RE: Tapernate-example and the former jars
Andreas, I am in the process of moving stuff around on my server. The new poms will reflect the changes. Sorry for the inconvenience. I need to test in a clean local repository to assure that we're good to go. More in a bit... James -Original Message- From: Andreas Bulling [mailto:[EMAIL PROTECTED] On Behalf Of Andreas Bulling Sent: Saturday, June 03, 2006 9:29 AM To: Tapestry users Subject: Re: Tapernate-example and the former jars | The tapernate-example application (downloadable via SVN at | http://www.carmanconsulting.com/svn/public/tapernate-example/trunk/) has | been "mavenized" to reflect the dependencies. You can download it and copy | all the jars that it copies into the war (run mvn war:war) in your own | application. OK, so I checked tapernate-example out with subversion and changed to the "trunk" subdirectory. Running mvn war:war returns: mvn -e war:war + Error stacktraces are turned on. [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'war'. [INFO] org.apache.maven.plugins: checking for updates from cc-repo [WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: cc-repo due to an error: Error transferring file [INFO] Repository 'cc-repo' will be blacklisted [INFO] org.apache.maven.plugins: checking for updates from central [WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: central due to an error: Error transferring file [INFO] Repository 'central' will be blacklisted [INFO] [ERROR] BUILD ERROR [INFO] [INFO] The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found [INFO] [INFO] Trace org.apache.maven.lifecycle.LifecycleExecutionException: The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLife cycleExecutor.java:1247) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.getMojoDescriptor(Defaul tLifecycleExecutor.java:1430) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.segmentTaskListByAggrega tionNeeds(DefaultLifecycleExecutor.java:378) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycle Executor.java:134) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115) at org.apache.maven.cli.MavenCli.main(MavenCli.java:249) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.version.PluginVersionNotFoundException: The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVer sion(DefaultPluginVersionManager.java:225) at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVer sion(DefaultPluginVersionManager.java:87) at org.apache.maven.plugin.DefaultPluginManager.verifyPlugin(DefaultPluginManag er.java:160) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLife cycleExecutor.java:1218) ... 14 more [INFO] [INFO] Total time: 1 second [INFO] Finished at: Sat Jun 03 13:28:35 GMT 2006 [INFO] Final Memory: 1M/2M [INFO] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tapernate-example and the former jars
| The tapernate-example application (downloadable via SVN at | http://www.carmanconsulting.com/svn/public/tapernate-example/trunk/) has | been "mavenized" to reflect the dependencies. You can download it and copy | all the jars that it copies into the war (run mvn war:war) in your own | application. OK, so I checked tapernate-example out with subversion and changed to the "trunk" subdirectory. Running mvn war:war returns: mvn -e war:war + Error stacktraces are turned on. [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'war'. [INFO] org.apache.maven.plugins: checking for updates from cc-repo [WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: cc-repo due to an error: Error transferring file [INFO] Repository 'cc-repo' will be blacklisted [INFO] org.apache.maven.plugins: checking for updates from central [WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retrieved from repository: central due to an error: Error transferring file [INFO] Repository 'central' will be blacklisted [INFO] [ERROR] BUILD ERROR [INFO] [INFO] The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found [INFO] [INFO] Trace org.apache.maven.lifecycle.LifecycleExecutionException: The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLifecycleExecutor.java:1247) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.getMojoDescriptor(DefaultLifecycleExecutor.java:1430) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.segmentTaskListByAggregationNeeds(DefaultLifecycleExecutor.java:378) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:134) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115) at org.apache.maven.cli.MavenCli.main(MavenCli.java:249) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.version.PluginVersionNotFoundException: The plugin 'org.apache.maven.plugins:maven-compiler-plugin' does not exist or no valid version could be found at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVersion(DefaultPluginVersionManager.java:225) at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVersion(DefaultPluginVersionManager.java:87) at org.apache.maven.plugin.DefaultPluginManager.verifyPlugin(DefaultPluginManager.java:160) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLifecycleExecutor.java:1218) ... 14 more [INFO] [INFO] Total time: 1 second [INFO] Finished at: Sat Jun 03 13:28:35 GMT 2006 [INFO] Final Memory: 1M/2M [INFO] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tapernate-example and the former jars
Hi James, thanks for your explanations! That means I have to install maven in any case... What about the idea of putting the jars into your repository as it had been before? Seems to be a bit too difficult to have to use maven just to get them. Kind regards, Andreas On 03. Jun 2006 - 07:19:45, James Carman wrote: | I sent this last night, but I'm having trouble with Norton Internet Security | and out-going emails. So, here it is again: | | Andreas, | | Sorry for the confusion. Tapernate has been moved to the tapestry-javaforge | project and I'm maintaining a deployed version of it in my own maven2 | repository (until I can figure out how to get it published into other | repositories). So, in your applications (maven2 of course) you can declare | a dependency as follows: | | | com.javaforge.tapestry | tapernate | 0.1-SNAPSHOT | | | If you just want to download it from my repo and not worry about building it | into your own you have to define my repo in your pom.xml as follows: | | | | cc-repo | Carman Consulting | http://www.carmanconsulting.com/repository | | | | The tapernate-example application (downloadable via SVN at | http://www.carmanconsulting.com/svn/public/tapernate-example/trunk/) has | been "mavenized" to reflect the dependencies. You can download it and copy | all the jars that it copies into the war (run mvn war:war) in your own | application. | | James - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tapernate-example and the former jars
I sent this last night, but I'm having trouble with Norton Internet Security and out-going emails. So, here it is again: Andreas, Sorry for the confusion. Tapernate has been moved to the tapestry-javaforge project and I'm maintaining a deployed version of it in my own maven2 repository (until I can figure out how to get it published into other repositories). So, in your applications (maven2 of course) you can declare a dependency as follows: com.javaforge.tapestry tapernate 0.1-SNAPSHOT If you just want to download it from my repo and not worry about building it into your own you have to define my repo in your pom.xml as follows: cc-repo Carman Consulting http://www.carmanconsulting.com/repository The tapernate-example application (downloadable via SVN at http://www.carmanconsulting.com/svn/public/tapernate-example/trunk/) has been "mavenized" to reflect the dependencies. You can download it and copy all the jars that it copies into the war (run mvn war:war) in your own application. James -Original Message- From: Andreas Bulling [mailto:[EMAIL PROTECTED] On Behalf Of Andreas Bulling Sent: Friday, June 02, 2006 5:58 PM To: Tapestry users Subject: Tapernate-example and the former jars Hi James, so that also other people are able to read your answer I'm asking on the list... In the old tapernate-example the different jars had been included but they seem to have gone in the current one. :( Do I have to install maven and build them on my own? If not where can I find them? Is there still a tapernate jar available (that can be dropped in and used right out of the box)? Thanks! Andreas - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tapestry 4.0.2 does not deploy out of the box on JDK EE 5
You might want to post this to the HiveMind users list as an FYI, maybe. -Original Message- From: Marcel Schepers [mailto:[EMAIL PROTECTED] Sent: Saturday, June 03, 2006 6:21 AM To: Tapestry users Subject: Tapestry 4.0.2 does not deploy out of the box on JDK EE 5 A standard Tapestry 4.0 application does not deploy on Sun's application server. Using a standalone version of Tomcat 5.5 or JBoss 4.0.4 the application deploys fine. However, for SJSAS PE9 I had to make the following changes in RegistryInfrastructureConstructor.addModuleDescriptor if (_modules.containsKey(id)){ // Ignore the duplicate module descriptor _without_ error handling return; } I have changed the 'maven2-dec12-2005' version, also known as ' hivemind-1.2-alpha-1'. Is that the Hivemind 1.1.1 version? Hope this helps for other users. Have a nice day, Marcel I have entered the following Glassfish defect: To deploy a Tapestry 4 application a small change in hivemind.jar is needed. A standard installation of SJSAS PE9 detects a duplicate module. See below for a stacktrace. I've solved this by ignoring a duplicate module in hivemind, that is I've created a custom version. On a side note, Geronimo has/had the same problem, see ' http://issues.apache.org/jira/browse/GERONIMO-1871' for details. [#|2006-06-03T11:36: 24.390+0200|SEVERE|sun-appserver-pe9.0|javax.enterprise.system.container.web |_ThreadID=13;_ThreadName=httpWorkerThread-8080-1;_RequestID=cf5bf2fe-4ddf-4 7d4-8f65-1760f3110bdb;|StandardWrapperValve[Application]: Allocate exception for servlet Application org.apache.hivemind.ApplicationRuntimeException: Error: Module hivemind is duplicated! Definition in jar:file:/C:/Java/AppServer/domains/domain1/applications/j2ee-apps/postbeeld - ear-1.0.0/postbeeld-web-1_0_0_war/WEB-INF/lib/hivemind- 1.1.1-tapestry.jar!/META-INF/hivemodule.xml has been ignored in favor of existing definition from jar:file:/C:/Java/AppServer/domains/domain1/applications/j2ee-apps/postbeeld - ear-1.0.0/postbeeld-web-1_0_0_war/WEB-INF/lib/hivemind- 1.1.1-tapestry.jar!/META-INF/hivemodule.xml. at org.apache.hivemind.impl.StrictErrorHandler.error( StrictErrorHandler.java:39) at org.apache.hivemind.impl.RegistryInfrastructureConstructor.addModuleDescript or (RegistryInfrastructureConstructor.java:202) at org.apache.hivemind.impl.RegistryBuilder.processModuleDescriptorProvider( RegistryBuilder.java:168) at org.apache.hivemind.impl.RegistryBuilder.constructRegistry( RegistryBuilder.java:143) at org.apache.tapestry.ApplicationServlet.constructRegistry( ApplicationServlet.java:253) at org.apache.tapestry.ApplicationServlet.init(ApplicationServlet.java :194) at org.apache.catalina.core.StandardWrapper.loadServlet( StandardWrapper.java:1133) at org.apache.catalina.core.StandardWrapper.allocate( StandardWrapper.java:787) at org.apache.catalina.core.StandardWrapperValve.invoke( StandardWrapperValve.java:183) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke( StandardPipeline.java:536) at org.apache.catalina.core.StandardContextValve.invokeInternal( StandardContextValve.java:240) at org.apache.catalina.core.StandardContextValve.invoke( StandardContextValve.java:179) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73) at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:182) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at com.sun.enterprise.web.VirtualServerPipeline.invoke( VirtualServerPipeline.java:120) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939) at org.apache.catalina.core.StandardEngineValve.invoke( StandardEngineValve.java:137) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke( StandardPipeline.java:536) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java :231) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter( ProcessorTask.java:667) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked( ProcessorTask.java:574) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process( ProcessorTask.java:844) at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask( ReadTask.java:287) at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask( ReadTask.java:212) at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java :252) at com.sun.enterprise.web.connector.grizzly.WorkerThread.run( WorkerThread.java:75) |#] - To unsubscribe, e-mail: [EMAIL PROTECTED] For
Tapestry 4.0.2 does not deploy out of the box on JDK EE 5
A standard Tapestry 4.0 application does not deploy on Sun's application server. Using a standalone version of Tomcat 5.5 or JBoss 4.0.4 the application deploys fine. However, for SJSAS PE9 I had to make the following changes in RegistryInfrastructureConstructor.addModuleDescriptor if (_modules.containsKey(id)){ // Ignore the duplicate module descriptor _without_ error handling return; } I have changed the 'maven2-dec12-2005' version, also known as ' hivemind-1.2-alpha-1'. Is that the Hivemind 1.1.1 version? Hope this helps for other users. Have a nice day, Marcel I have entered the following Glassfish defect: To deploy a Tapestry 4 application a small change in hivemind.jar is needed. A standard installation of SJSAS PE9 detects a duplicate module. See below for a stacktrace. I've solved this by ignoring a duplicate module in hivemind, that is I've created a custom version. On a side note, Geronimo has/had the same problem, see ' http://issues.apache.org/jira/browse/GERONIMO-1871' for details. [#|2006-06-03T11:36: 24.390+0200|SEVERE|sun-appserver-pe9.0|javax.enterprise.system.container.web|_ThreadID=13;_ThreadName=httpWorkerThread-8080-1;_RequestID=cf5bf2fe-4ddf-47d4-8f65-1760f3110bdb;|StandardWrapperValve[Application]: Allocate exception for servlet Application org.apache.hivemind.ApplicationRuntimeException: Error: Module hivemind is duplicated! Definition in jar:file:/C:/Java/AppServer/domains/domain1/applications/j2ee-apps/postbeeld- ear-1.0.0/postbeeld-web-1_0_0_war/WEB-INF/lib/hivemind- 1.1.1-tapestry.jar!/META-INF/hivemodule.xml has been ignored in favor of existing definition from jar:file:/C:/Java/AppServer/domains/domain1/applications/j2ee-apps/postbeeld- ear-1.0.0/postbeeld-web-1_0_0_war/WEB-INF/lib/hivemind- 1.1.1-tapestry.jar!/META-INF/hivemodule.xml. at org.apache.hivemind.impl.StrictErrorHandler.error( StrictErrorHandler.java:39) at org.apache.hivemind.impl.RegistryInfrastructureConstructor.addModuleDescriptor (RegistryInfrastructureConstructor.java:202) at org.apache.hivemind.impl.RegistryBuilder.processModuleDescriptorProvider( RegistryBuilder.java:168) at org.apache.hivemind.impl.RegistryBuilder.constructRegistry( RegistryBuilder.java:143) at org.apache.tapestry.ApplicationServlet.constructRegistry( ApplicationServlet.java:253) at org.apache.tapestry.ApplicationServlet.init(ApplicationServlet.java :194) at org.apache.catalina.core.StandardWrapper.loadServlet( StandardWrapper.java:1133) at org.apache.catalina.core.StandardWrapper.allocate( StandardWrapper.java:787) at org.apache.catalina.core.StandardWrapperValve.invoke( StandardWrapperValve.java:183) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke( StandardPipeline.java:536) at org.apache.catalina.core.StandardContextValve.invokeInternal( StandardContextValve.java:240) at org.apache.catalina.core.StandardContextValve.invoke( StandardContextValve.java:179) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73) at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:182) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at com.sun.enterprise.web.VirtualServerPipeline.invoke( VirtualServerPipeline.java:120) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939) at org.apache.catalina.core.StandardEngineValve.invoke( StandardEngineValve.java:137) at org.apache.catalina.core.StandardPipeline.doInvoke( StandardPipeline.java:566) at org.apache.catalina.core.StandardPipeline.invoke( StandardPipeline.java:536) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java :231) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter( ProcessorTask.java:667) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked( ProcessorTask.java:574) at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process( ProcessorTask.java:844) at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask( ReadTask.java:287) at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask( ReadTask.java:212) at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java :252) at com.sun.enterprise.web.connector.grizzly.WorkerThread.run( WorkerThread.java:75) |#]