Ah, thanks so much for the tip! I did embed the files, which really bloated up the app. Will try out the duo app approach; makes lots of sense.
On Tue, Sep 15, 2015 at 1:52 PM, Kalle Korhonen <kalle.o.korho...@gmail.com> wrote: > 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 > > > -- Best Regards Harry Zhou