[
http://jira.codehaus.org/browse/MWEBSTART-38?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_97264
]
Kevin Stembridge commented on MWEBSTART-38:
-------------------------------------------
It gets more complicated.
Another requirement for a JnlpDownloadServlet WAR is that it can deploy
multiple webstart applications. Some (maybe even all) of the jar resources may
be shared by the JNLP apps. This means multiple JNLP files but only a single
version.xml file. I don't think this will be too much of a problem to
implement, but it does mean that the new MOJO has even less in common with the
existing ones than it did before.
At the moment, all of the functionality of the existing 3 mojos is implemented
in AbstractJnlpMojo. My new mojo extends this class also, but I had to add some
hook methods in the abstract class to allow for the different requirements of
the new mojo. I think a better solution would be to factor the common
functionality into a higher-level superclass that contains just utility
methods, i.e. does not provide a template 'execute' method.
So my proposal is to rename AbstractJnlpMojo to AbstractStandaloneJnlpMojo and
factor the utility methods from this class into a new class called
AbstractJnlpMojo (the same as the previous superclass). JnlpDownloadServletMojo
will extend this class directly and provide its own execute method.
Another advantage of this approach is that the dependency mechanism for the
existing mojos doesn't need to change (although I still think it is definitely
worth considering).
One final thing to consider is that a superclass containing nothing but common
utility methods is an indication that maybe the superclass is not required, and
utility helper classes could be used instead. This should become more obvious
as I do the coding, so I'll keep it in mind.
> Create a new mojo for use within JnlpDownloadServlet webapp projects
> --------------------------------------------------------------------
>
> Key: MWEBSTART-38
> URL: http://jira.codehaus.org/browse/MWEBSTART-38
> Project: Maven 2.x Webstart Plugin
> Issue Type: New Feature
> Affects Versions: 1.0-alpha-1
> Environment: n/a
> Reporter: Kevin Stembridge
> Fix For: 1.0-alpha-2
>
> Attachments: AbstractJnlpMojo2.java, Generator2.java,
> JarResource.java, JnlpDownloadServletMojo.java, VersionXmlGenerator.java
>
>
> The plugin doesn't currently cater for jnlp projects that will be bundled in
> a webapp and served up by the JnlpDownloadServlet.
> To be suitable for this type of project, the following features are required:
> - The mojo should be usable within a war project.
> - It won't produce its own artifact. The jars will be processed and stored in
> a subdirectory of the exploded war target directory.
> - A version.xml file is optionally generated.
> - Enables multiple versions of an artifact to be included in the bundle. This
> is to allow the JnlpDownloadServlet to provide jardiff updates to clients.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email