Hey Fred,

Have you thought about modifying the project-examples functionality to work directly with the quickstarts zips in Maven?  I was looking at something like this a while back, as SwitchYard bundles all their quickstarts in a zip for packaging with the runtime.  If you could simply download the projects from Maven, I think that would greatly simplify things.

That said, I never got a chance to finish this work for SwitchYard (other priorities).

Here is some history: https://issues.jboss.org/browse/JBIDE-10616

Best,
Rob


Hi,

we need to clean up the project examples in JBoss Tools 4.0/JBDS 6.0 (as part of https://issues.jboss.org/browse/JBIDE-12554).
So, my idea was to replace all the old examples with the quickstarts from https://github.com/jboss-jdf/jboss-as-quickstart

Since the quickstarts are not available as standalone zips, for consumption in JBT/JBDS, I created a script (https://github.com/fbricon/jboss-as-quickstart/commit/cb1a0638b352434c48c7ecb6de20ed514e0c31fb) that does that, and it also generates a project example stub we can use almost directly in JBT.

D:\Dev\GitHub\jboss-as-quickstart>mvn groovy:execute -N -Pzip-modules,requires-postgres,complex-dependencies,requires-full,requires-xts
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building JBoss AS Quickstarts Parent 7.1.2-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- gmaven-plugin:1.4:execute (default-cli) @ jboss-as-quickstarts-parent ---
Starting zipping JBoss AS Quickstarts Parent modules
Deleting D:\Dev\GitHub\jboss-as-quickstart\target\zips
Zipped 51 quickstart modules
Generating project examples descriptor for JBoss Tools
[WARNING] module 'bmt' has a non matching artifactId 'jboss-as-bmt'
[WARNING] module 'cdi-injection' has a non matching artifactId 'jboss-as-cdi-injection'
[WARNING] module 'cdi-portable-extension' has a non matching artifactId 'jboss-as-cdi-portable-extension'
[WARNING] module 'ejb-in-ear' has a non matching artifactId 'jboss-as-ejb-in-ear'
[WARNING] module 'ejb-in-war' has a non matching artifactId 'jboss-as-ejb-in-war'
[WARNING] module 'ejb-remote' has a non matching artifactId 'jboss-as-ejb-remote-parent'
[WARNING] module 'ejb-security' has a non matching artifactId 'jboss-as-ejb-security'
[WARNING] module 'greeter' has a non matching artifactId 'jboss-as-greeter'
[WARNING] module 'helloworld' has a non matching artifactId 'jboss-as-helloworld'
[WARNING] module 'helloworld-errai' has a non matching artifactId 'jboss-as-helloworld-errai'
[WARNING] module 'helloworld-gwt' has a non matching artifactId 'jboss-as-helloworld-gwt'
[WARNING] module 'helloworld-html5' has a non matching artifactId 'jboss-as-helloworld-html5'
[WARNING] module 'helloworld-jms' has a non matching artifactId 'jboss-as-helloworld-jms'
[WARNING] module 'helloworld-osgi' has a non matching artifactId 'jboss-as-helloworld-osgi'
[WARNING] module 'helloworld-rs' has a non matching artifactId 'jboss-as-helloworld-rs'
[WARNING] module 'helloworld-singleton' has a non matching artifactId 'jboss-as-helloworld-singleton'
[WARNING] module 'hibernate3' has a non matching artifactId 'jboss-as-hibernate3'
[WARNING] module 'hibernate4' has a non matching artifactId 'jboss-as-hibernate4'
[WARNING] module 'kitchensink' has a non matching artifactId 'jboss-as-kitchensink'
[WARNING] module 'kitchensink-ear' has a non matching artifactId 'jboss-as-kitchensink-ear'
[WARNING] module 'kitchensink-html5-mobile' has a non matching artifactId 'jboss-as-kitchensink-html5-mobile'
[WARNING] module 'kitchensink-jsp' has a non matching artifactId 'jboss-as-kitchensink-jsp'
[WARNING] module 'kitchensink-ml' has a non matching artifactId 'jboss-as-kitchensink-ml'
[WARNING] module 'kitchensink-ml-ear' has a non matching artifactId 'jboss-as-kitchensink-ml-ear'
[WARNING] module 'log4j' has a non matching artifactId 'jboss-as-log4j'
[WARNING] module 'logging-tools' has a non matching artifactId 'jboss-as-logging-tools'
[WARNING] module 'mail' has a non matching artifactId 'jboss-as-mail'
[WARNING] module 'numberguess' has a non matching artifactId 'jboss-as-numberguess'
[WARNING] module 'payment-cdi-event' has a non matching artifactId 'jboss-as-payment-cdi-event'
[WARNING] module 'richfaces-validation' has a non matching artifactId 'jboss-as-richfaces-validation'
[WARNING] module 'servlet-async' has a non matching artifactId 'jboss-as-servlet-async'
[WARNING] module 'servlet-filterlistener' has a non matching artifactId 'jboss-as-servlet-filterlistener'
[WARNING] module 'servlet-security' has a non matching artifactId 'jboss-as-servlet-security'
[WARNING] module 'tasks' has a non matching artifactId 'jboss-as-tasks'
[WARNING] module 'tasks-jsf' has a non matching artifactId 'jboss-as-tasks-jsf'
[WARNING] module 'temperature-converter' has a non matching artifactId 'jboss-as-temperature-converter'
[WARNING] module 'tasks-rs' has a non matching artifactId 'jboss-as-tasks-rs'
[WARNING] module 'wicket-ear' has a non matching artifactId 'jboss-as-wicket-ear-parent'
[WARNING] module 'wicket-war' has a non matching artifactId 'jboss-as-wicket-war'
[WARNING] module 'xml-jaxp' has a non matching artifactId 'jboss-as-xml-jaxp'
[WARNING] module 'xml-dom4j' has a non matching artifactId 'jboss-as-xml-dom4j'
[WARNING] module 'cmt' has a non matching artifactId 'jboss-as-cmt'
[WARNING] module 'jts' has a non matching artifactId 'jboss-as-jts-parent'
[WARNING] module 'jax-rs-client' has a non matching artifactId 'jboss-as-jax-rs-client'
[WARNING] module 'inter-app' has a non matching artifactId 'jboss-as-inter-app-parent'
[WARNING] module 'helloworld-mdb' has a non matching artifactId 'jboss-as-helloworld-mdb'
[WARNING] module 'jta-crash-rec' has a non matching artifactId 'jboss-as-jta-crash-rec'
[WARNING] module 'wsat-simple' has a non matching artifactId 'jboss-as-wsat-simple'
[WARNING] module 'wsba-coordinator-completion-simple' has a non matching artifactId 'jboss-as-wsba-coordinator-completion-simple'
[WARNING] module 'wsba-participant-completion-simple' has a non matching artifactId 'jboss-as-wsba-participant-completion-simple'
D:\Dev\GitHub\jboss-as-quickstart\target\zips\quickstarts.xml generated


[WARNING] 50 quickstart artifactIds mismatch with their folder name.
This will prevent WTP from opening the proper url when running on a server.

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.506s
[INFO] Finished at: Tue Oct 09 15:02:44 CEST 2012
[INFO] Final Memory: 11M/490M
[INFO] ------------------------------------------------------------------------

As hinted  in the log, the examples wouldn't quite work perfectly OOTB. http://wiki.eclipse.org/M2E-WTP_FAQ#How_do_I_change_the_context_root_of_my_project.3F explains how the context root is inferred from the pom.xml by m2e-wtp. However our own JBoss AS server adapter ignores the WTP project context root and bases its deployment on the project name, leading to 404s as seen in the video below.

End result in JBT / Central : http://www.screencast.com/users/fbricon/folders/Jing/media/464f8246-84bc-4941-b84c-7ae6420c2ac7

Now.
 * are you guys ok to actually remove and replace the old examples with the JDF quickstarts
 * if you're ok, I'll setup a CI job to deploy the quickstarts to download.jboss.org
 * who's willing to give me a hand in validating the quickstarts properly work in JBT/JBDS. That includes :
      - checking the project belongs (or not) to JBT/JBDS
      - checking there's a proper project description
      - checking the projects are properly configured (I noticed some EARs are seen as 1.3 instead of 6.0) and compile without errors
      - checking the projects deploy OOTB on AS7/EAP6

Regards,

Fred Bricon     


_______________________________________________
jbosstools-dev mailing list
jbosstools-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jbosstools-dev