"MobileNavigationHandler" does NOT exist anymore in PrimeFaces 7 - jsf

The scenario is a mobile page developed with JSF and Primeface Mobile. I want to navigate in the same xhtml page between multiple pages (have a look at: JSF Primefaces Mobile navigation). After upgrading PrimeFaces from version 6.1 to 7.0 org.primefaces.mobile.application.MobileNavigationHandler does NOT exist anymore. What do i need to use instead? The migration guide "6.2 to 7.0" (https://github.com/primefaces/primefaces/wiki/Migration-Guide) doesnt help me: "[...] Mobile has been removed in favor of responsive features. [...]"

There is NO migration path for you other than rewriting your code.
PrimeFaces Mobile was completely removed in 7.0
See this blog post from Primefaces: https://www.primefaces.org/primefaces-6-2-roadmap/
PF Mobile is a renderkit for the existing components however we’ve
just realized that we have to maintain two different sets at the same
time so decided to deprecate PF Mobile and focus on the responsiveness
of the standard renderkit. So in 6.2, mobile will be deprecated and
removed in 7.0.

Have a look at my migrated fork: https://github.com/djmj/primefaces-mobile.
I extracted the mobile components from PrimeFaces 6.1 and adapted them to PrimeFaces 7.0 as a separate library. I did testing with mobile showcase and will test it in our own application and production the next days.

Related

a4j reRender not working(requires refresh (Ie11))

I'm using JSF 1.2 on IE11. Recently I added Richfaces api - 3.3.3, Richfaces impl- 3.3.3, Richfaces ui - 3.3.3 , in order to solve the issues I've been getting while migrating from IE 8 to IE 11. After these jars were added, I've been getting issues with the reRender.
Scenario is, a selectonemenu change event triggers is supposed to render another a4j outputPanel panel. But this only happens after a refresh(pressing F5).
Without these jars, my project seems to be working fine, except the IE 11 compatibility issues.
RichFaces 3 does not support IE9 (refer here for more details). And likely does not support IE10+.
You can test it out on demo environment. If it does not work your options are to upgrade JSF/RF or add IE compatibility headers.

primefaces single project web and mobile

Primefaces supports both web and mobile version. There is some minor difference in coding the two version.
Is there anyway to use primefaces for both WEB and MOBILE version? I mean single code base which supports both MOBILE and WEB version using primefaces? (something similar to the applications built by bootstrap)
Primefaces mobile is built on jquery mobile which works on phone, tablet, or desktop. So if you stick with primefaces mobile it should work on all devices.
To make it clear, Primefaces created some PrimeFaces Premium Themes and Layouts like (Sentinel, Spark, Ronin and all other on http://www.primefaces.org/themes). In my opinion that's great (good looking / pixel perfect), those are responsive layouts but not all components are responsive. You can check responsive components on responsive.xhtml

Primefaces Mobile 0.9.4 does not work with Primefaces 4

I have a web mobile application running on JBoss 7.1.1 AS, Mojarra JSF 2.1, Primefaces 3.5 and Primefaces Mobile 0.9.4.
Primefaces 4 was released for community. I updated it and the application crashed when using p:dataList.
Anyone knows if primefaces 4 supports primefaces mobile 0.9.4?
Thanks.
It's not supported. Have a look at this blog (http://blog.primefaces.org/?p=2894) and scroll to the comment by srbala. Not sure when mobile 1 is coming out. I'm waiting for it.

PrimeFaces 3.5 with WebSphere 6.1

I have a problem with WebSphere 6.1 and Primefaces. I have created an application, but used a local Tomcat appserver for testing. Everything was working fine, until I tried to deploy it on WAS 6.1.
After investigating the internal server problem, I saw, that WAS 6.1 only supports JSF 1.1, so I can throw out the whole interface :S
My question is, what is the best and most importantly, the fastest solution for this:
my interface is very simple, only panels, commandbuttons, a menu and a printer component. Is it possible to go back to a previous version of primefaces that supports jsf 1.1 keeping most of the code? (as I read, primefaces 1.1 is the last, which is far away from 3.5 )
use another faces implementation, if yes which one is the easiest to switch to from primefaces
can WAS 6.1 be made somehow compatible with JSF 2?
any other way
It's possible if you drop the necessary JSF 2.0/2.1 + PrimeFaces 3.5 JARs in webapp's /WEB-INF/lib and set in WebSphere admin the classloader policy to PARENT_LAST on both the EAR and WAR. This will force WebSphere to load webapp-bundled JSF instead of its own bundled JSF.

Liferay theme upgrade from 5.2 to 6.1

I am upgrading Liferay from 5.2 to 6.1. I want to know similar to core liferay, for theme also we have to follow two steps up-gradation (i.e from 5.2 to 6.0 then 6.0 to 6.1) or we can directly go for 5.2 to 6.1 theme upgrade.
The theme doesn't require any sort of upgrade process so you'll only need to rewrite it once.
Basically you'll just need to make sure that the theme is using 6.1 API and AUI.
The most complicated of the two being migrating from jQuery to AUI (YUI).
Here is a "rosetta stone" to get you started: http://www.jsrosettastone.com/
The upgrade is not like the core liferay.
Steps (more of a check-list) to look for when upgrading themes:
1) You have to change the liferay-look-and-feel.xml's <version>6.1+</version>.
2) You would need to manually include jQuery, as now it is not part of Liferay (Alloy UI is now a part). You can include them through the template files (*.vm).
3) There are a lot of customizations in the template files (portal_normal.vm, portlet.vm, navigation.vm etc) from 5.2 to 6.1, so if you have done customizations to these then you would have to again customize them.
4) Also a lot of CSS changes have happened since 5.2, infact 6.1 UI is almost completely different from 5.2. So you will have to again style liferay html elements as it now uses alloy UI JSP tags to render them.
Hope this helps.

Resources