Hello Doug, Thanks for your reply. I had followed pointers on the web to the jboss-related plugins on mojo.codehaus.org but read reports that wsr files were not working in these plugins. Hence, I wrote my own.
However, my plugin is *very* rudimentary right now. I based it on the maven-war-plugin and changed references to web.xml to web-service.xml and the use of a "webapp" source directory to "websvc". I'm doing just enough to get all the wsrs that we use (currently built using ant) to work. As a matter of fact, it is probably only useful to me since I removed the adding of all dependent jars to the wsr file (in our case, ours are in common to lots of the web services and we put them directly in the server/default/lib directory rather than embedding them in the wsr file. So I suspect my plugin won't really be useful to anyone else. If I do beef it up as time goes on and make it more useful, I'll make it available to others. Thanks, however, for the pointers. I'll take a look at the jboss-related plugins to see if anything would be useful to me. -- Eric -----Original Message----- From: Doug Douglass [mailto:[EMAIL PROTECTED] Sent: Sunday, October 08, 2006 1:10 PM To: Maven Developers List Subject: Re: Creating a .wsr file artifact Eric, I'm getting to this a little late as it appears you've already created the plugin, but there are the jboss-sar and jboss-packaging plugins over at mojo.codehaus.org that, more or less, do what you have done. The jboss-packaging plugin is intended to supercede the jboss-sar plugin and support SAR, HAR, PAR, .spring, etc JBoss deployable packagings. It would be nice to combine your WSR code into that plugin. There is currently a problem with the jboss-packaging plugin though. Since all these packagings are JBoss-specific, I've been trying to use packaging values jboss-sar, jboss-har, etc. instead of simply sar, har, etc to denote their specific usage. Unfortunately, the packaging appears to be coupled to the deployed artifact extension (e.g., deploying a jboss-sar packaged project, uses jboss-sar as the dpelyed artifact extension), which makes a bit of sense, but is limitting. Since all these packagings are just jar files with a specific deployment descriptor and file extension, perhaps they all should be considered attached artifacts with the promary artifact being the jar. This would at least solve the packaging/deploy extension coupling "problem". Sorry some of this is OT to maven-dev, but I'd really like to see the jboss-packaging mojo inherit your WSR code, and be stablized for a release. Regards, Doug On 10/7/06, Swenson, Eric <[EMAIL PROTECTED]> wrote: > > Thanks very much, Wendell. I finally have everything working correctly. > I actually had two things wrong -- I didn't have the <extension> in my > project's pom and the life-cycle (<component-set>) in my plugin had a > couple mistakes. Thanks again for your help. -- Eric > > -----Original Message----- > From: Wendell Beckwith [mailto:[EMAIL PROTECTED] > Sent: Saturday, October 07, 2006 3:09 AM > To: Maven Developers List > Subject: Re: Creating a .wsr file artifact > > IIRC those are "standard" mappings and they are defined inside the > components.xml defined in the maven-core plugin in your <maven home>/lib > directory. Because your plugin is not a "standard" plugin you have to > use > the <extension> element with your plugin declaration in the pom of the > project that uses the maven-wsr-plugin so that maven knows to look for > lifecycle enahncements in the plugin. > > Wb > > On 10/7/06, Swenson, Eric <[EMAIL PROTECTED]> wrote: > > > > I looked in both the maven-jar-plugin and the maven-war-plugin and > don't > > see any components.xml. Yet these both appear to define a default > life > > cycle mapping (somehow). -- Eric > > > > -----Original Message----- > > From: Swenson, Eric > > Sent: Friday, October 06, 2006 11:56 PM > > To: Maven Developers List > > Subject: RE: Creating a .wsr file artifact > > > > Thanks Nathan. But I'm still not getting anywhere. I assume what > > you're saying is that I need to add a META-INF/plexus/components.xml > to > > my plugin jar. I've done that (but perhaps the contents is still not > > right), but I still get the error message, upon doing an "mvn compile" > > or "mvn package" that says: > > > > [INFO] Cannot find lifecycle mapping for packaging: 'wsr'. > > Component descriptor cannot be found in the component repository: > > org.apache.maven.lifecycle.mapping.LifecycleMappingwsr. > > > > If I do see the META-INF/plexus/components.xml in my maven-wsr-plugin > > jar file. > > > > Also, I modeled my maven-wsr-plugin after maven-war-plugin (I started > > with the same codebase and removed the web.xml-related stuff and > > replaced with web-service.xml-related stuff). And maven-war-plugin > > doesn't have a components.xml in it. So why does maven-war-plugin > allow > > me to do "mvn compile" and "mvn package" but maven-wsr-plugin doesn't? > > Is there some other registry that needs updating? When I install the > > plugin in the repository, do I need any special steps or is the "mvn > > install" (on the maven-wsr-plugin project) enough? > > > > Thanks. -- Eric > > > > -----Original Message----- > > From: Nathan Beyer [mailto:[EMAIL PROTECTED] > > Sent: Friday, October 06, 2006 9:43 PM > > To: Maven Developers List > > Subject: Re: Creating a .wsr file artifact > > > > Check out the CustomArtifactHandler part of this guide [1]. I think > > what you're missing is an "extension" [2] element in your POM. > > > > -Nathan > > > > [1] > > > http://maven.apache.org/guides/introduction/introduction-to-the-lifecycl > > e.html > > [2] > > > http://maven.apache.org/ref/current/maven-model/maven.html#class_extensi > > on > > > > On 10/6/06, Swenson, Eric <[EMAIL PROTECTED]> wrote: > > > Well, I've made progress since my post. However, I still have an > > issue. > > > I now have a maven-wsr-plugin, which I based on maven-war-plugin and > > I'm > > > able to compile my project with: > > > > > > mvn compiler:compile > > > > > > and package my project (into a .wsr file) with: > > > > > > mvn wsr:wsr > > > > > > However, what I can't do is perform the compile/package/install > > > automatically by simply doing: > > > > > > mvn install > > > > > > This works for jar and war files. But for my wsr files, it doesn't. > > > When I attempt either an: > > > > > > mvn compile > > > > > > or > > > > > > mvn install > > > > > > I get the error: > > > > > > $ mvn compile > > > [INFO] Scanning for projects... > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > ---- > > > [INFO] Building NemoPersonalizationService > > > [INFO] task-segment: [compile] > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > ---- > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > [ERROR] BUILD ERROR > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > [INFO] Cannot find lifecycle mapping for packaging: 'wsr'. > > > Component descriptor cannot be found in the component repository: > > > org.apache.maven.lifecycle.mapping.LifecycleMappingwsr. > > > > > > or > > > > > > $ mvn install > > > [INFO] Scanning for projects... > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > ---- > > > [INFO] Building NemoPersonalizationService > > > [INFO] task-segment: [install] > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > ---- > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > [ERROR] BUILD ERROR > > > [INFO] > > > > > > ------------------------------------------------------------------------ > > > [INFO] Cannot find lifecycle mapping for packaging: 'wsr'. > > > Component descriptor cannot be found in the component repository: > > > org.apache.maven.lifecycle.mapping.LifecycleMappingwsr. > > > > > > If my pom uses <packaging>jar</packaging> > > > > > > I'm able to use "mvn compile" or "mvn package" or "mvn install". > > > > > > How can I enable this for my maven-wsr-plugin (e.g. pom files with > > > <packaging>wsr</packaging>? > > > > > > -- Eric > > > > > > > > > > > > -----Original Message----- > > > From: Swenson, Eric > > > Sent: Friday, October 06, 2006 5:53 PM > > > To: dev@maven.apache.org > > > Subject: Creating a .wsr file artifact > > > > > > I'm using Maven 2.0.4 and need to produce a .wsr file. A .wsr file > is > > a > > > jboss web service archive and is very similar to a .war file, a .sar > > > file, and an .ear file. I've tried two tacts so far, neither > > > successful. > > > > > > > > > > > > The first approach was to take the mavin-war-plugin sources, > renaming > > > all instances of "war" to "wsr" and using it. I had to make a copy > of > > > the WarArchiver class (org.codehaus.plexus.archiver.WarArchiver) and > > > rename it, too, to WsrArchiver in order to get the generated > > plugin.xml > > > to not refer to WarArchiver. However, I was never able to get this > > > plugin to work. I kept getting errors telling me that the life > cycle > > > manager could not find a mapping for "wsr". > > > > > > > > > > > > I gave up and tried to figure out how to get maven to simply rename > > the > > > artifact after the package goal - I went back to using war files. I > > > wanted to simply rename this from a war file to a wsr file. But I > > could > > > never figure out how to do that. It would appear that the <format> > in > > > an <assembly> (I used "zip") also dictated the file extension placed > > on > > > the output of the assembly. > > > > > > > > > > > > Can someone give me some hints on how to accomplish what I need to > do? > > > I would actually like to get the mavin-wsr-plugin to work because > I'd > > > like to be able to add more wsr-related smarts to the packaging > (there > > > are additional files in a wsr that are not in a war). But I can't > > > figure out how to get a copy of mavin-war-plugin to work with the > > *only* > > > change being that the file extension of the artifact is changed to > > "wsr" > > > (from "war"). > > > > > > > > > > > > Can anyone help? -- Eric > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > 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] > > > > > > > > > > --------------------------------------------------------------------- > > 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] > > > > > > > --------------------------------------------------------------------- > 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]