i'm trying to set an online checkers game, using JSF2 on GlassFish 3, where all the game's logic is taken care by EJB.
the thing is i want player A board's display to get updated after the player B's move. after the player B finished his/her move, i'm calling
pushContext.push("groupName")
on the code's bean (while there's <icecore:push group="groupName" />
tag in the xhtml code)
the problem is (from what it seems to me) player A's board object hasn't been updated from the EJB yet, so there's nothing to update on the display. player A's board display is updated only after he/she finished his/hers move (and at this point its bean code asks for an updated board from the EJB).
i thought i found the solution here. my plan is to set a JS function inside the xhtml, to which the the bean code would call using the <icep:register> tag, and that JS function would call a java function inside the bean code which would ask for an updated board from the EJB and then would update the display.
the thing is i can't find anywhere how to implement any of the 'icep' tags. when i put this tag into my code i get a compile error.
what do i need to add to my project in order for this to work?
or is there a completely different (and better) approach to solve my problem?
cheers,
eRez
The <icep:register> is part of the ICEpush JSP integration, and just intended for JSP pages, not JSF pages. So that may be why you're getting that compilation issue. You can use the javascript registration api. But have you looked at using the PortableRenderer? If you're ejb is in the same jvm, this might work and be a lot easier for you. Check out:
http://wiki.icesoft.org/display/ICE/Ajax+Push+-+APIs#AjaxPush-APIs-PushingfromoutsidetheJSFcontext
Thanks,
Philip
Related
Situation
We are rebuilding a web application (winforms), from the ground up. The old application will keep running, when the new one is released. This means that the new application needs to talk to an old database, I can't change anything there. The new application will be build with .NET Core 2.0 MVC.
The old application uses a custom translation database table, based on a language-id and translation-id. Very straighforward.
Problem
The old application made a database call for each translation, over and over again. Because the new application needs to reuse this table, i'd rather have a smarter system. Because of the amount of translations, I don't want to get all data on each page request. I also don't want to make a database-call for each translation.
Idea
My idea is to create a custom HtmlHelper (or dependency injected translation instance, but that might be harder in this situation) which only needs the translation ID. The helper will get the language from a cookie. This way, we can simply use the following code in our views:
#Html.Translate(1337)
What i'd like to achieve, is to use the first Translate-call to scan the RazorView for all Translate-calls (with their parameters). This way, I can use a Dependency Injected Scoped instance to save all the translations to. Which means that I only have to make one database call for each requested view.
Actual question
Does this sound like a good idea, and will this be doable? I searched through the MVC source code, but can't find a way to achieve something like this. The RazorView instance in the IHtmlHelper does not seem to have list of IHtmlHelper's or something...
Its my first time to work with Joomla and I need to make a plugin that basically stores/updates a name and a City the thing is that I want this functionality only in admin panel not in the front end.
Its a bit confusing to me weather I should create a component or a module or a plugin ?
Does anyone has a good guide on how to create such functionality?
Thanks in advance.
If you don't know when to use a module, a plugin, or a component, then a good starting point would be here.
Typically, a module is essentially used for displaying content on specific pages in a specific location. A plugin usually works in the background (modifies displayed content, computes stuff, alters the database, processes payments, etc...). A component is like the Joomla articles component (com_content), in most cases, a component occupies the biggest part of the page (while a module occupies a smaller part).
I've been developing a web application in CakePHP 2.x that uses an Image cropping tool to manipulate an image. Currently it passes Ajax calls to handle the manipulation onto a function within the current Controller which then calls a Component which contains the main processing and functionality.
I'm currently going through and refactoring this section of the code and I was wondering if it's possible to directly call the Component from Ajax and whether or not it is a good idea or not as it would simplify a chunk of the code if possible.
Thoughts, opinions and tips are greatly appreciated. Thanks :)
I'm currently going through and refactoring this section of the code and I was wondering if it's possible to directly call the Component from Ajax and whether or not it is a good idea or not as it would simplify a chunk of the code if possible.
It's not a good idea because this is how components are thought to be used. A component is not thought to receive a request directly but to provide additional - reuseable functionality - to the controlller level in the MVC pattern.
Taken from the documentation:
Components are packages of logic that are shared between controllers. CakePHP comes with a fantastic set of core components you can use to aid in various common tasks. You can also create your own components. If you find yourself wanting to copy and paste things between controllers, you should consider creating your own component to contain the functionality. Creating components keeps controller code clean and allows you to reuse code between projects.
I have to decide on the view layer technology to use with Spring MVC 3 and I came across Thymeleaf.
Has anybody worked with Thymeleaf or has any experience with it. What will I gain and miss if I happen to choose it to work with Spring 3.
I wanted my front end designers to feel comfortable was why I was thinking if I could use thymeleaf with Spring 3 and still have all the functionalities we get with JSPs + Spring MVC 3.
Thymeleaf and Spring are a very nice match. The spring integration of Thymeleaf is done as it's supposed to be and it was nicely documented how to get started.
I use this combination since one year in several projects and I'm still happy with the choice I've made at the time.
Thymeleaf propagates the so called "Natural templating", which means that the templates can be viewed without the template engine, they are html files with additional tag attributes which browsers just ignore.
This means that a webdesigner can design the page, hand it over to the developer and get back again if changes to the layout have to be made.
While I liked this idea a lot in the beginning, I soon realized that, as developers, we tend to create components to be reused. This results often in templates having either not alot to display or also an extreme amount of elements.
Imagine some switch statement in a table cell component which renders either checkbox, textfield, select box, and so on. The table template including this cell fragment does not resolve it without an engine. Or imagine the header fragment with all the style and js declarations. Css will not be available in plain file mode.
But you can add additional html tags and remove them during processing. So natural templating is still possible. Just a lot to write :)
There are support extensions around solving this issues (using JS to pull in the fragments for example) but I havent used them as my applications are normally deployed within 30sec and I'm even able to change the templates on the fly without a redeploy.
After you also have a quite nice eco system around thymeleaf. The ability to extend Thymeleaf is done in a way I really enjoy! (Having written two smaller extensions myself).
I prefer the layout dialect instead of the include approach. That's a matter of taste i would say.
Choosing Thymeleaf over Plain JSP is clearly favorable from my point of view. Take a look at the webpage and decide for yourself ;)
I'm working with Spring 3 and Thymeleaf for a year and think it's a good choice. I came from Grails and Play and look for a good alternative and created FuWeSta. You can look at the rudimetar sample-app.
I've been working with Imagemapster for about a week and it's been getting the job done. I added Prototype JS this morning and all of my image treatments went away.
If your aren't familiar with either
http://www.outsharked.com/imagemapster/
http://prototypejs.org/
I'm also using jquery-latest.js, Prototype is working fine with or with out Imagemapster. It doesn't seem to matter which order they are loaded in either.
I was hoping there might be another way besides noconflict.
Thank you