On Tue, Sep 15, 2015 at 9:34 AM, Harry Zhou <superha...@gmail.com> wrote:
> Would appreciate your advice on how to setup Ember for T5.4. I imagine the > way would be defining an init module that requires via shim ember (also > ember-data, etc.) and @import that module on the Tapestry page. But what is > the most logical place to put custom ember code, and how best to link that > custom code to the init module? > I've mentioned something about it earlier in this message thread and there was a different thread on it as well where Andreas Andreou shared his experiences. Because of the ember-cli, and all the pretty cool transpiling, minifying etc. tools, I really wouldn't try to embed the Ember scripts into a T5 app but make it a separate app and run them together. It's easy to package an ember app into .war if you need to - basically just zip up the contents of /dist. Then just deploy those two wars together. The only other thing you need to take care of is that the two applications can talk to each other by adding the right CORS+CSP headers (see https://en.wikipedia.org/wiki/Cross-origin_resource_sharing for more). If you really wanted embed the scripts into a T5 application, I'd just contribute the two different js files, the <app>.js and vendor.js that Ember spits out at the end as Javascript modules but I'd say developing them together is too clunky that way. Kalle > On Mon, Sep 14, 2015 at 6:31 PM, Thiago H de Paula Figueiredo < > thiag...@gmail.com> wrote: > > > On Mon, 14 Sep 2015 14:21:46 -0300, Kalle Korhonen < > > kalle.o.korho...@gmail.com> wrote: > > > > React and Ember Fastboot solve the SEO problem by rendering the first > load > >> on server, but Angular doesn't offer the same functionality natively. > >> There's https://prerender.io/ though, but it's another component you > need > >> to deploy. > >> > > > > I like the concept of isomorphic webapps: the same JavaScript used in the > > client-side is used in the server-side for doing an initial rendering. > > > > The links above demonstrate it for Spring MVC, but I believe it could be > > very easily done with Tapestry too: > > > http://winterbe.com/posts/2015/02/16/isomorphic-react-webapps-on-the-jvm/ > > > > > https://speakerdeck.com/sdeleuze/isomorphic-templating-with-spring-boot-nashorn-and-react > > > > > > > >> Kalle > >> > >> On Mon, Sep 14, 2015 at 6:20 AM, George Christman < > >> gchrist...@cardaddy.com> > >> wrote: > >> > >> Very nice Arve, do you have any experience making these angular pages > SEO > >>> friendly? > >>> > >>> On Sun, Sep 6, 2015 at 11:08 AM, Arve Klev <arvek...@gmail.com> wrote: > >>> > >>> > Hello. > >>> > Yes it is VERY easy to to use AngularJS (or eg. > >>> Highchart/Raphael/JChart) > >>> > with Tapestry 5.4. > >>> > Use Tapestry as usual and let different pages do what you want (eg. > one > >>> > page as an AngularJS SPA). > >>> > Every page use the same Layout component. > >>> > > >>> > 1. Place angular.js in src/main/resources/META-INF/modules/angular.js > >>> > 2. Create a file > >>> src/main/resources/META-INF/modules/angular-bootstrap.js > >>> > that bootstrap angular and your own angular code > >>> > 3. Create a file > src/main/resources/META-INF/modules/my-angular-code.js > >>> > 4. Create a file > src/main/resources/META-INF/assets/my-angular-code.css > >>> for > >>> > decoration > >>> > 5. Import angular-bootstrap.js and my-angular-code.css in your > >>> class-file: > >>> > @Import(module = { "angular-bootstrap" }, stylesheet = { > >>> > "my-angular-code.css" }) > >>> > > >>> > I have a running example here: http://tap54-arvek.rhcloud.com > >>> > The code at GitHub: > >>> > https://github.com/arvek-xx/tapestry54-javascript-examples > >>> > > >>> > In the "NgPhones"-page, I use a rest-service to retrieve data. > >>> > > >>> > > >>> > Sincerely, Arve Klev > >>> > > >>> > 2015-08-10 19:59 GMT+02:00 Taha Siddiqi <tawus.tapes...@gmail.com>: > >>> > > >>> > > Well my way is to spend sometime on anything I find interesting... > >>> > > (Usually Saturday mornings) > >>> > > > >>> > > That is how I found tapestry and now Clojure/clojusescript, mongo, > >>> Titan > >>> > > graphs etc... So exciting !! > >>> > > > >>> > > Sent from my iPhone > >>> > > > >>> > > > On Aug 10, 2015, at 9:01 PM, George Christman < > >>> gchrist...@cardaddy.com > >>> > > > >>> > > wrote: > >>> > > > > >>> > > > I think the choices these days are starting to become very > >>> > overwhelming, > >>> > > I > >>> > > > wish there was a magic bullet eliminating all these choices. I'd > >>> like > >>> > to > >>> > > > pick a new frontend framework, but with all the advise from the > >>> > different > >>> > > > sources, I don't think I know enough anymore to make an educated > >>> > > decision. > >>> > > > > >>> > > > On Sat, Aug 8, 2015 at 5:18 AM, Taha Siddiqi < > >>> tawus.tapes...@gmail.com > >>> > > > >>> > > > wrote: > >>> > > > > >>> > > >> For me it is om(or reactjs). I am currently in the process of > >>> > replacing > >>> > > >> JavaScript in one of my JavaScript intense Tapestry project > with > >>> > > >> om/ClojureScript. > >>> > > >> > >>> > > >> Sent from my iPhone > >>> > > >> > >>> > > >>>> On Aug 8, 2015, at 11:41 AM, Kalle Korhonen < > >>> > > kalle.o.korho...@gmail.com> > >>> > > >>> wrote: > >>> > > >>> > >>> > > >>>> On Fri, Aug 7, 2015 at 3:40 PM, françois facon < > >>> fra.fa...@gmail.com > >>> > > > >>> > > >> wrote: > >>> > > >>>> > >>> > > >>>> About Ember, I looking for an equivalent of > >>> > > >>>> https://docs.angularjs.org/tutorial. > >>> > > >>> > >>> > > >>> I haven't found anything quite as comprehensive for Ember. One > >>> issue > >>> > > with > >>> > > >>> Ember is that many of these tutorials are outdated because its > >>> > changed > >>> > > so > >>> > > >>> fast. The official documentation is often too simplistic when > you > >>> are > >>> > > new > >>> > > >>> to it but trying to build something real. However, this one is > >>> fairly > >>> > > >>> up-to-date and helped me quite a bit when I started out: > >>> > > >>> > >>> http://www.fnaweso.me/ember-js-nested-routing-with-multiple-outlets/ > >>> > > >>> > >>> > > >>> At least for me, working with AngularJS feels more like working > >>> with > >>> > T5 > >>> > > >>> services and its IoC whereas working with Ember feels more like > >>> > writing > >>> > > >> T5 > >>> > > >>> components and I felt right at home with all the Ember > >>> conventions. > >>> > And > >>> > > >>> while it's relatively easy to bootstrap AngularJS to run as > part > >>> of > >>> > T5 > >>> > > >> app, > >>> > > >>> it really doesn't make sense with all the bits and pieces of > >>> Ember > >>> > > >> tooling, > >>> > > >>> the CLI etc (there was an earlier thread about that and I > >>> followed > >>> > > >> Andreas > >>> > > >>> Andreou's advice). Ember is more comprehensive than AngularJS > and > >>> its > >>> > > >>> router is incredibly useful for mapping out a structure for > >>> larger > >>> > > spas. > >>> > > >>> > >>> > > >>> Kalle > >>> > > >>> > >>> > > >>> > >>> > > >>> > >>> > > >>>> 2015-08-07 22:18 GMT+02:00 Kalle Korhonen < > >>> > kalle.o.korho...@gmail.com > >>> > > >: > >>> > > >>>> > >>> > > >>>>> It's pretty easy. Don't build component event requests but > just > >>> > send > >>> > > >>>>> REST(-like) requests that are either processed by plain > >>> Tapestry > >>> > > pages > >>> > > >>>> and > >>> > > >>>>> its EventContext. If you are building a more comprehensive > spa > >>> then > >>> > > >>>>> consider pairing the client with JAX-WS resource backend > (i.e. > >>> > > >>>>> http://www.tynamo.org/tapestry-resteasy+guide/ for T5). > >>> > > Incidentally, > >>> > > >>>> I've > >>> > > >>>>> been working with spas lately as well, and moved from > AngularJS > >>> to > >>> > > >> Ember. > >>> > > >>>>> > >>> > > >>>>> Kalle > >>> > > >>>>> > >>> > > >>>>>> On Fri, Aug 7, 2015 at 12:46 PM, Bob Harner < > >>> bobhar...@gmail.com> > >>> > > >> wrote: > >>> > > >>>>>> > >>> > > >>>>>> Yes a page/event. As long as the URL looks like a tapestry > >>> event > >>> > > >>>> request, > >>> > > >>>>>> you can handle the request in an event handler method within > >>> the > >>> > > >> page's > >>> > > >>>>>> Java class, and return JSON. > >>> > > >>>>>> > >>> > > >>>>>> On Fri, Aug 7, 2015 at 2:40 PM, George Christman < > >>> > > >>>>> gchrist...@cardaddy.com> > >>> > > >>>>>> wrote: > >>> > > >>>>>> > >>> > > >>>>>>> Hi guys, I've been playing around with AngularJS and > backbone > >>> > > >>>> recently > >>> > > >>>>>> and > >>> > > >>>>>>> I'm wondering if it's pretty easy to use with Tapestry? I'm > >>> more > >>> > > >>>>>> concerned > >>> > > >>>>>>> with ajax events etc. I know in grails you can just point > >>> your > >>> > url > >>> > > >>>> to a > >>> > > >>>>>>> controller/action, would we do something similar in > Tapestry, > >>> but > >>> > > >>>>>> obviously > >>> > > >>>>>>> not a controller, but a page / event? > >>> > > >> > >>> > > >> > >>> --------------------------------------------------------------------- > >>> > > >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > >>> > > >> For additional commands, e-mail: users-h...@tapestry.apache.org > >>> > > > > >>> > > > > >>> > > > -- > >>> > > > George Christman > >>> > > > CEO > >>> > > > www.CarDaddy.com > >>> > > > P.O. Box 735 > >>> > > > Johnstown, New York > >>> > > > >>> > > > --------------------------------------------------------------------- > >>> > > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > >>> > > For additional commands, e-mail: users-h...@tapestry.apache.org > >>> > > > >>> > > > >>> > > >>> > >>> > >>> > >>> -- > >>> George Christman > >>> CEO > >>> www.CarDaddy.com > >>> P.O. Box 735 > >>> Johnstown, New York > >>> > >>> > > > > -- > > Thiago H. de Paula Figueiredo > > Tapestry, Java and Hibernate consultant and developer > > http://machina.com.br > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > > For additional commands, e-mail: users-h...@tapestry.apache.org > > > > > > > -- > Best Regards > Harry Zhou >