[forge-dev] POH5 runtime generation
Ryan Bradley
rbradley at redhat.com
Wed Feb 29 09:43:37 EST 2012
Yup, my ScaffoldProvider is picked up when I run *scaffold setup
--scaffoldType spring *(the alias of the ScaffoldProvider implementaton).
Cheers,
Ryan
On 02/28/2012 05:06 PM, Lincoln Baxter, III wrote:
> From what I can tell - the Aerogear scaffold is not being picked up as
> a ScaffoldProvider, which is odd...
>
> Ryan, have you actually tried running your scaffold provider in a real
> forge runtime? Does it get picked up when you run *scaffold setup
> --scaffoldType xxxxx *?
>
> ~Lincoln
>
> On Tue, Feb 28, 2012 at 4:23 PM, Richard Kennard
> <richard at kennardconsulting.com <mailto:richard at kennardconsulting.com>>
> wrote:
>
> Pete: could you try running with VERBOSE set to true?
>
> Lincoln: could you take a look at this? I actually can't get
> plugins working on my Windows machine (see earlier post), so I've
> just been building via unit tests this whole time (see
> https://github.com/forge/scaffold-aerogear/blob/master/src/test/java/org/jboss/forge/scaffold/aerogear/scenario/employeedatabase/AeroGearScaffoldEmployeeDatabaseTest.java).
>
> On 29/02/2012 1:19 AM, Pete Muir wrote:
>
> Getting there, now get an error running scaffold:
>
> ***SUCCESS*** Installed from
> [git://github.com/forge/scaffold-aerogear.git
> <http://github.com/forge/scaffold-aerogear.git>] successfully.
> Wrote /Users/pmuir/.forge/plugins/org/jboss
> Wrote /Users/pmuir/.forge/plugins/org/jboss/forge
> Wrote /Users/pmuir/.forge/plugins/org/jboss/forge/plugins
> Wrote /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/1.0.0-SNAPSHOT-979983d6-c420-45db-960a-6a0b37ea8ed1
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/1.0.0-SNAPSHOT-979983d6-c420-45db-960a-6a0b37ea8ed1/plugin-scaffold-aerogear.jar
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/1.0.0-SNAPSHOT-979983d6-c420-45db-960a-6a0b37ea8ed1/module.xml
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/dependencies
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/dependencies/1.0.0-SNAPSHOT-979983d6-c420-45db-960a-6a0b37ea8ed1
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/dependencies/1.0.0-SNAPSHOT-979983d6-c420-45db-960a-6a0b37ea8ed1/metawidget-all-2.1-SNAPSHOT.jar
> Wrote
> /Users/pmuir/.forge/plugins/org/jboss/forge/plugins/aerogear/plugin-scaffold-aerogear/dependencies/1.0.0-SNAPSHOT-979983d6-c420-45db-960a-6a0b37ea8ed1/module.xml
> [no project] workspace $ new-project --named test
> --topLevelPackage com.test --type war
> ? Use [/Users/pmuir/workspace/test] as project directory? [Y/n]
> ***SUCCESS*** Created project [test] in new working directory
> [/Users/pmuir/workspace/test]
> Wrote /Users/pmuir/workspace/test
> Wrote /Users/pmuir/workspace/test/pom.xml
> Wrote /Users/pmuir/workspace/test/src/main/java
> Wrote /Users/pmuir/workspace/test/src/test/java
> Wrote /Users/pmuir/workspace/test/src/main/webapp
> Wrote /Users/pmuir/workspace/test/src/main/resources
> Wrote /Users/pmuir/workspace/test/src/test/resources
> Wrote
> /Users/pmuir/workspace/test/src/main/resources/META-INF/forge.xml
> [test] test $ persistence setup
> ? [provider=ARG (of type
> org.jboss.forge.spec.javaee.jpa.api.JPAProvider)]:
> ? [provider=ARG (of type
> org.jboss.forge.spec.javaee.jpa.api.JPAProvider)]: HIBERNATE
> ? [container=ARG (of type
> org.jboss.forge.spec.javaee.jpa.api.JPAContainer)]: JBOSS_AS
> JBOSS_AS6 JBOSS_AS7
> ? [container=ARG (of type
> org.jboss.forge.spec.javaee.jpa.api.JPAContainer)]: JBOSS_AS7
> Warning: The encoding 'UTF-8' is not supported by the Java
> runtime.
> ***SUCCESS*** Installed [forge.spec.jpa] successfully.
> ***INFO*** Setting transaction-type="JTA"
> ***INFO*** Using example data source
> [java:jboss/datasources/ExampleDS]
> Warning: The encoding 'UTF-8' is not supported by the Java
> runtime.
> ? The JPA provider [HIBERNATE], also supplies extended APIs.
> Install these as well? [y/N]
> ***SUCCESS*** Persistence (JPA) is installed.
> Wrote
> /Users/pmuir/workspace/test/src/main/resources/META-INF/persistence.xml
> Wrote /Users/pmuir/workspace/test/pom.xml
> [test] test $ scaffold setup --scaffoldType aerogear
> ***ERROR*** [scaffold setup] null
> [test] test $ scaffold setup --scaffoldType aerogear
> ***ERROR*** [scaffold setup] null
> [test] test $
>
>
> On 28 Feb 2012, at 00:21, Richard Kennard wrote:
>
> Apologies. I forgot to update the Metawidget 2.1-SNAPSHOT
> in the JBoss repo. Please try again now? Or, at a pinch,
> the blog entry contains a link to the generated project.
>
> Regards,
>
> Richard.
>
> On 28/02/2012 12:01 AM, Pete Muir wrote:
>
> I get an error when trying to install the plugin:
>
> [no project] development $ forge git-plugin
> git://github.com/forge/scaffold-aerogear.git
> <http://github.com/forge/scaffold-aerogear.git>
> ***INFO*** Checking out plugin source files to
> [/var/folders/ph/8l1qbzzj23x7r628rqg5fqq00000gn/T/forgetemp2637555117540383425/repo]
> via 'git'
> ***WARNING*** Could not find a Ref matching the
> current Forge version [1.0.0.CR2], building Plugin
> from HEAD.
> ***INFO*** Invoking build with underlying build system.
> [INFO] Scanning for projects...
> [INFO]
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Building plugin-scaffold-aerogear 1.0.0-SNAPSHOT
> [INFO]
> ------------------------------------------------------------------------
> [INFO]
> [INFO] --- maven-clean-plugin:2.4.1:clean
> (default-clean) @ plugin-scaffold-aerogear ---
> [INFO]
> [INFO] --- maven-resources-plugin:2.5:resources
> (default-resources) @ plugin-scaffold-aerogear ---
> [debug] execute contextualize
> [WARNING] Using platform encoding (MacRoman actually)
> to copy filtered resources, i.e. build is platform
> dependent!
> [INFO] Copying 21 resources
> [INFO]
> [INFO] --- maven-compiler-plugin:2.3.2:compile
> (default-compile) @ plugin-scaffold-aerogear ---
> [WARNING] File encoding has not been set, using
> platform encoding MacRoman, i.e. build is platform
> dependent!
> [INFO] Compiling 12 source files to
> /private/var/folders/ph/8l1qbzzj23x7r628rqg5fqq00000gn/T/forgetemp2637555117540383425/repo/target/classes
> [INFO]
> -------------------------------------------------------------
> [ERROR] COMPILATION ERROR :
> [INFO]
> -------------------------------------------------------------
> [ERROR]
> /private/var/folders/ph/8l1qbzzj23x7r628rqg5fqq00000gn/T/forgetemp2637555117540383425/repo/src/main/java/org/jboss/forge/scaffold/aerogear/metawidget/layout/HtmlDivLayout.java:[48,18]
> cannot find symbol
> symbol : method
> getWidgetId(org.metawidget.statically.StaticXmlWidget)
> location: class
> org.jboss.forge.scaffold.aerogear.metawidget.layout.HtmlDivLayout
> [ERROR]
> /private/var/folders/ph/8l1qbzzj23x7r628rqg5fqq00000gn/T/forgetemp2637555117540383425/repo/src/main/java/org/jboss/forge/scaffold/aerogear/metawidget/layout/HtmlDivLayout.java:[44,3]
> method does not override or implement a method from a
> supertype
> [INFO] 2 errors
> [INFO]
> -------------------------------------------------------------
> [INFO]
> ------------------------------------------------------------------------
> [INFO] BUILD FAILURE
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 6.255s
> [INFO] Finished at: Mon Feb 27 12:59:37 GMT 2012
> [INFO] Final Memory: 14M/125M
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile
> (default-compile) on project plugin-scaffold-aerogear:
> Compilation failure: Compilation failure:
> [ERROR]
> /private/var/folders/ph/8l1qbzzj23x7r628rqg5fqq00000gn/T/forgetemp2637555117540383425/repo/src/main/java/org/jboss/forge/scaffold/aerogear/metawidget/layout/HtmlDivLayout.java:[48,18]
> cannot find symbol
> [ERROR] symbol : method
> getWidgetId(org.metawidget.statically.StaticXmlWidget)
> [ERROR] location: class
> org.jboss.forge.scaffold.aerogear.metawidget.layout.HtmlDivLayout
> [ERROR]
> /private/var/folders/ph/8l1qbzzj23x7r628rqg5fqq00000gn/T/forgetemp2637555117540383425/repo/src/main/java/org/jboss/forge/scaffold/aerogear/metawidget/layout/HtmlDivLayout.java:[44,3]
> method does not override or implement a method from a
> supertype
> [ERROR] -> [Help 1]
> [ERROR]
> [ERROR] To see the full stack trace of the errors,
> re-run Maven with the -e switch.
> [ERROR] Re-run Maven using the -X switch to enable
> full debug logging.
> [ERROR]
> [ERROR] For more information about the errors and
> possible solutions, please read the following articles:
> [ERROR] [Help 1]
> http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
> ***ERROR*** [forge git-plugin] Build failed.
> [no project] development $ version
> JBoss Forge, version [ 1.0.0.CR2 ] - JBoss, by Red
> Hat, Inc. [ http://jboss.org/forge ]
> [no project] development $
>
> On 24 Feb 2012, at 20:44, Richard Kennard wrote:
>
> Pete, Jay, Rodney,
>
> The work I have checked in to GitHub...
>
> https://github.com/forge/scaffold-aerogear
>
> ...and the blog entry I have documented...
>
> https://community.jboss.org/thread/195877
>
> ...brings me to 240 hours (well, a little over,
> but I won't complicate things :). So I guess that
> concludes the contract we first discussed last
> October, the deliverables being 'A statically
> generated, extend-able [JSF] UI scaffold framework
> for Forge' and 'Investigation of use of Metawidget
> in Mobile'.
>
> Thank you for giving me this opportunity. I have
> enjoyed the work immensely, have learnt a lot, and
> everybody has been very helpful and supportive. I
> hope what I've produced has met your expectations.
>
> I look forward to hearing from Jay regarding the
> AeroGear proof of concept, and to our contract
> meeting on 1st March.
>
> Thanks again,
>
> Richard.
>
> On 17/02/2012 10:57 PM, Jay Balunas wrote:
>
> On Feb 17, 2012, at 1:52 AM, Richard
> Kennard<richard at kennardconsulting.com
> <mailto:richard at kennardconsulting.com>> wrote:
>
> Jay,
>
> look forward to seeing what you are
> planning, and working on.
>
> Yes, sorry to be leaving you in the dark.
> Progress was slow at the start (I've never
> used JQuery or JSON or HTML 5), but is now
> coming together nicely. I'm 32 hours in
> with 31 hours left in the contact. I
> should be able to do another 15 hours or
> so before March 1st, by which time I
> should have something to show you.
>
> Excellent!
>
> Regards,
>
> Richard.
>
> On 16/02/2012 1:00 PM, Jay Balunas wrote:
>
> On Feb 15, 2012, at 8:58 PM, Richard
> Kennard wrote:
>
> Jay,
>
> Okay great. There is a meeting on
> 1st March with Pete, Rodney and
> myself to discuss The Future. You
> may want to attend, or talk to
> them before that?
>
> Absolutely! I'll touch base with them
> about that, and look forward to seeing
> what you are planning, and working on.
>
> Regards,
>
> Richard.
>
> On 16/02/2012 12:12 PM, Jay
> Balunas wrote:
>
> On Feb 15, 2012, at 6:49 PM,
> Richard
> Kennard<richard at kennardconsulting.com
> <mailto:richard at kennardconsulting.com>>
> wrote:
>
> Jay,
>
> By runtime generation, you
> mean JavaScript generating
> HTML widgets dynamically
> in response to
> inspecting/reflecting
> incoming metadata?
>
> +1
>
> The current POC is
> focussed on *static*
> generation of HTML widgets
> (at 'Forge time'). So you
> are talking about the work
> beyond that?
>
> Understood, and yes this would
> be something additional.
>
> For an example, please see
> the 'GWT Client Side' demo
> in the Metawidget examples
> distribution. This is
> written using GWT compiled
> to JavaScript. Are you are
> asking for something
> similar, but a POH5 version?
>
> The GWT solution could be very
> interesting, both the approach
> and the possible implication
> with poh5 (not mutually exclusive)
>
> Regards,
>
> Richard.
>
> On 16/02/2012 2:22 AM, Jay
> Balunas wrote:
>
> Hi Richard,
>
> I wanted to follow up
> on this, I know you
> only work Fridays on
> the JBoss stuff, so I
> wanted to catch you
> before that.
>
> There may also be
> pressure to get some
> of the POH5 runtime
> generation in place
> for JBoss World, so I
> wanted to discuss you
> expected availability
> between now and then.
>
> I'd like to see your
> contract extended, but
> wanted to check with
> you first.
>
> Thoughts?
>
> -Jay
>
> On Feb 10, 2012, at
> 7:50 AM, Marius
> Bogoevici wrote:
>
> The convention is
> to use different
> URLs for
> Create/Update, e.g.
>
> POST /members ->
> create
>
> PUT /members/1 (or
> POST /members/1
> take that,
> oppressive RESTful
> conventional
> wisdom ;) ) UPDATE
>
> To me, it's not
> inconceivable that
> clients of such a
> service will
> perform ad-hoc
> updates (i.e. not
> part of a GET
> data/UPDATE data
> cycle), so
> assuming that
> there's a
> conversation going
> on won't help too
> much.
>
> I believe that
> such a service
> (especially if
> scaffolded with
> Forge) should use
> JSON throughout
> (rather than form
> data), and I
> *believe* this is
> what the Forge
> JAX-RS plugin does
> too, but I would
> have to check on
> that. In a more
> elaborate context
> like Forge, we
> could pair that
> with Backbone.js
> (or something else
> that Jay&co love,
> but I think Bb.js
> was the belle of
> the ball) and use
> fetch()/save()/destroy()
> capabilities to
> streamline CRUD. IMO.
>
>
> On 12-02-10 5:43
> AM, Pete Muir wrote:
>
> Adding Marius.
>
> BTW Richard,
> I'm sure you
> know this but
> Lincoln added
> JAX-RS
> scaffold to
> Forge.
> Whatever we do
> here should be
> well
> integrated
> with that...
>
> On 10 Feb
> 2012, at
> 04:40, Richard
> Kennard wrote:
>
> Jay,
>
> (please
> advise if
> there is
> an
> aerogear
> group I
> should be
> posting
> this to).
>
> As a first
> step
> towards a
> Forge/Metawidget/AeroGear/POH5
> scaffolding,
> I am
> working on
> a POH5
> CRUD app.
> The
> 'jboss-html5-mobile-archetype'
> has given
> me a great
> head
> start, but
> there is
> some way
> to go.
>
> The first
> significant roadblock
> I have hit
> is
> *updating*
> existing
> entities.
> The
> archetype
> doesn't
> really
> cover
> this, but
> it sets a
> direction
> when it
> does...
>
> @POST
>
> @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
>
> @Produces(MediaType.APPLICATION_JSON)
> public
> Response
> createMember(@FormParam("name")
> String
> name ...
>
> A simple
> approach
> would be
> to simply
> add...
>
> @POST
>
> @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
>
> @Produces(MediaType.APPLICATION_JSON)
> public
> Response
> createMember(@FormParam("id")
> String id,
> @FormParam("name")
> String
> name ...
>
> However
> this would
> make the
> cardinal
> mistake of
> 'trusting
> the
> client'
> (to send
> back the
> original
> id).
> Instead, I
> think we
> need to
> keep a
> copy of
> any hidden
> data on
> the
> server, in
> a
> ConversationScope,
> just as we
> do with JSF.
>
> Unfortunately
> RESTEasy
> doesn't
> seem to
> play well
> with
> ConversationScope?
> The
> documentation
> for
> resteasy-cdi
> is
> unclear,
> but Jason
> Porter has
> investigated
> and
> concluded
> conversations
> are not
> supported
> (as REST
> does not
> convey any
> kind of
> session,
> let alone
> a
> conversation).
> So where
> to from here?
>
> 1. Ignore
> this
> security
> problem
> and
> continue
> passing
> hidden
> data
> to/from
> the client
> 2. Look at
> encrypting
> the data
> passed
> between
> client/server
> (rather
> like an
> encrypted
> view state)
> 3. Work
> with
> Pete/Jozef
> to get
> ConversationScopes
> working
> between
> jQuery/RESTEasy/CDI
> 4.
> Something
> else?
>
> Regards,
>
> Richard.
>
>
>
>
>
>
>
>
> --
> Lincoln Baxter, III
> http://ocpsoft.com
> http://scrumshark.com
> "Keep it Simple"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/forge-dev/attachments/20120229/a2d8d595/attachment-0001.html
More information about the forge-dev
mailing list