[proposal] Wink application builder/assembler for developers

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[proposal] Wink application builder/assembler for developers

Nicholas L Gallardo


I was going to just open a JIRA for this, but wanted to have a discussion
on it instead.  I'm not married to anything here so if someone has other
ideas to make this easier/more consumable, I'm all ears.

-------------------------------------------------------------------------

I've seen developers try to get started with Wink or other projects like it
and run into the sample problem, assembling application code into the
proper package.  This is in keeping with an earlier theme that was
discussed: lowering the barriers to getting an application running as much
as we can.

It would be nice if we had some sort of script that a developer could run
to package up their JAX-RS code with the proper Wink bits and produce a
deployable WAR file.  Imagine I'm using Eclipse or IDEA and I start by
writing a few JAX-RS resource classes and an application sub-class.  The
next thing I'm going to want to do is package those up and deploy them in a
web container to see my code working.  Given those two inputs (resources
and application class) I'm thinking something like:

{code}appbuilder -w MySample.war -d src -app
org.apache.wink.sample.MySampleApp{code}

-w is the name of the WAR that you want to build.

-d is the directory where the compiled output would be

-app is the name of the JAX-RS application subclass.

With these inputs, the tool would be responsible for doing the following:

- create a WAR structure to collect up all the bits that will be needed
- collect all of the classes from the compiled output dir and drop them
into the $WAR_HOME/classes directory
- create a web.xml
    - make an entry for the Wink servlet
    - add the application sub-class as an init-param
    - add a servlet mapping (potentially configurable by param)
- zip up the above and spit it out into a specified output directory
(allows for people to use hot deployment features of some web containers
for rapid dev)

Thoughts?

-N



Nicholas Gallardo
WebSphere  - REST & WebServices Development
[hidden email]
Phone: 512-286-6258
Building: 903 / 5G-016
Reply | Threaded
Open this post in threaded view
|

Re: [proposal] Wink application builder/assembler for developers

Davanum Srinivas
Nick,

Please see http://maven.apache.org/plugins/maven-archetype-plugin/

Basically you want to make the process described here:
http://zenoconsulting.wikidot.com/blog:1

even simpler by adding an archetype for jaxrs

thanks,
dims


On 08/19/2009 11:24 AM, Nicholas L Gallardo wrote:

>
>
> I was going to just open a JIRA for this, but wanted to have a discussion
> on it instead.  I'm not married to anything here so if someone has other
> ideas to make this easier/more consumable, I'm all ears.
>
> -------------------------------------------------------------------------
>
> I've seen developers try to get started with Wink or other projects like it
> and run into the sample problem, assembling application code into the
> proper package.  This is in keeping with an earlier theme that was
> discussed: lowering the barriers to getting an application running as much
> as we can.
>
> It would be nice if we had some sort of script that a developer could run
> to package up their JAX-RS code with the proper Wink bits and produce a
> deployable WAR file.  Imagine I'm using Eclipse or IDEA and I start by
> writing a few JAX-RS resource classes and an application sub-class.  The
> next thing I'm going to want to do is package those up and deploy them in a
> web container to see my code working.  Given those two inputs (resources
> and application class) I'm thinking something like:
>
> {code}appbuilder -w MySample.war -d src -app
> org.apache.wink.sample.MySampleApp{code}
>
> -w is the name of the WAR that you want to build.
>
> -d is the directory where the compiled output would be
>
> -app is the name of the JAX-RS application subclass.
>
> With these inputs, the tool would be responsible for doing the following:
>
> - create a WAR structure to collect up all the bits that will be needed
> - collect all of the classes from the compiled output dir and drop them
> into the $WAR_HOME/classes directory
> - create a web.xml
>      - make an entry for the Wink servlet
>      - add the application sub-class as an init-param
>      - add a servlet mapping (potentially configurable by param)
> - zip up the above and spit it out into a specified output directory
> (allows for people to use hot deployment features of some web containers
> for rapid dev)
>
> Thoughts?
>
> -N
>
>
>
> Nicholas Gallardo
> WebSphere  - REST&  WebServices Development
> [hidden email]
> Phone: 512-286-6258
> Building: 903 / 5G-016
Reply | Threaded
Open this post in threaded view
|

Re: [proposal] Wink application builder/assembler for developers

Nicholas L Gallardo

Thanks Dims, great links...

Yep, you're right.... I do want to make that process easier.

Also, maven is a good way to bootstrap some of this, but I'm not convinced that customer's want to use it for their dev. I've talked to a few that were opposed to pulling it in lieu of existing tools that they have and wanted to integrate with. So, we could offer a maven archetype, but I think we need to offer an option that doesn't require maven as well.

-Nick



Nicholas Gallardo
WebSphere - REST & WebServices Development
[hidden email]
Phone: 512-286-6258
Building: 903 / 5G-016
Davanum Srinivas <[hidden email]>



To

[hidden email]

cc


Subject

Re: [proposal] Wink application builder/assembler for developers

Nick,

Please see
http://maven.apache.org/plugins/maven-archetype-plugin/

Basically you want to make the process described here:
http://zenoconsulting.wikidot.com/blog:1

even simpler by adding an archetype for jaxrs

thanks,
dims


On 08/19/2009 11:24 AM, Nicholas L Gallardo wrote:
>
>
> I was going to just open a JIRA for this, but wanted to have a discussion
> on it instead.  I'm not married to anything here so if someone has other
> ideas to make this easier/more consumable, I'm all ears.
>
> -------------------------------------------------------------------------
>
> I've seen developers try to get started with Wink or other projects like it
> and run into the sample problem, assembling application code into the
> proper package.  This is in keeping with an earlier theme that was
> discussed: lowering the barriers to getting an application running as much
> as we can.
>
> It would be nice if we had some sort of script that a developer could run
> to package up their JAX-RS code with the proper Wink bits and produce a
> deployable WAR file.  Imagine I'm using Eclipse or IDEA and I start by
> writing a few JAX-RS resource classes and an application sub-class.  The
> next thing I'm going to want to do is package those up and deploy them in a
> web container to see my code working.  Given those two inputs (resources
> and application class) I'm thinking something like:
>
> {code}appbuilder -w MySample.war -d src -app
> org.apache.wink.sample.MySampleApp{code}
>
> -w is the name of the WAR that you want to build.
>
> -d is the directory where the compiled output would be
>
> -app is the name of the JAX-RS application subclass.
>
> With these inputs, the tool would be responsible for doing the following:
>
> - create a WAR structure to collect up all the bits that will be needed
> - collect all of the classes from the compiled output dir and drop them
> into the $WAR_HOME/classes directory
> - create a web.xml
>      - make an entry for the Wink servlet
>      - add the application sub-class as an init-param
>      - add a servlet mapping (potentially configurable by param)
> - zip up the above and spit it out into a specified output directory
> (allows for people to use hot deployment features of some web containers
> for rapid dev)
>
> Thoughts?
>
> -N
>
>
>
> Nicholas Gallardo
> WebSphere  - REST&  WebServices Development
> [hidden email]
> Phone: 512-286-6258
> Building: 903 / 5G-016