Managed bean not called in Icemobile - java

I am new to Icemobile, but since it promises fast development on mobile devices I gave it a shot. I use Netbeans for development, Netbeans 7.1 on one PC and Netbeans 7.3 on another.
The problem is that with Netbeans 7.1, a managed bean is not called on post back. It is constructed and getters are called on the initial GET page. On Netbeans 7.3 this is OK.

I later found that in Netbeans 7.1, the JSF library is JSF 2.1 with jsf-api.jar and jsf-impl.jar , whereas in Netbeans 7.3, it is JSF 2.2 javax.faces.jar. I substituted this jar in the Netbeans 7.1 machine and problem solved.
I think icesoft.org should state this caveat in http://www.icesoft.org/java/projects/ICEmobile/supported-platforms.jsf. Here it only says JSF 2 Mojarra.
Also although the web site states Tomcat 7 is required, I found Tomcat 6 is OK so far (although some functionalities may not be supported on Tomcat 6)

I don't believe that we've done any specific testing with ICEmobile with Mojarra 2.2. I would recommend sticking with Mojarra 2.1 for now. Despite the version the NetBeans version is defaulting to, you can override that just by including the javax.faces.jar in the WEB-INF/lib folder so that it's always included in the war file. As for Tomcat, I don't believe that we say that Tomcat 7 is required. We actually support a very wide range of application servers. Check out our supported platforms page (http://www.icesoft.org/java/projects/ICEmobile/supported-platforms.jsf).
The issue you were having with managed beans not being called sounds strange, and I would guess that it's more likely due to JSF configuration than ICEmobile. We'd be happy to take a look at your app and configuration.
Thanks,
Philip

In addition to posting your app, which version of the ICEfaces Netbeans plugin are you using? http://www.icesoft.org/java/downloads/icefaces-downloads.jsf.
What are the exact version numbers of the Mojarra jars you've been using for both 2.1 and 2.2?

Related

New JDK for old java app

I have a rather old java web app, which uses servlet spec version 2.3. I use struts 1.0, jsf 1.0 there, etc. This app is running on tomcat 6.0.13. Java version in 1.7. But, I want to upgrade java there. May I install jdk 1.8+ there? I tried, but it began complaining on UI part incompatibility, etc. How to install in there?
After 4 days of running tomcat 6 and Java 8 I can say that there are 2 big issues which (thanks God) I have managed to fix.
Make sure all browsers which are using your web app has TLS enabled
Starting from certain update of JDK 7 java required TLS to be enabled in the browser, for example I had a trouble with clients which used IE6. The same is true for JDK8
Make sure you don't have any scriptlets in your application or they are compatible with java8
Tomcat compiles all your jsps to the special classes, and if you have in your code a construction like:
<% Set set=myHashMap.entrySet().blabla%>
you will get an exception which says that it can't understand the .class file structure, because tomcat is trying to use special framework (jasper?), which tries to parse the .class file of compiled jsp page. I moved scriptlets to the appropriate backing beans and it works ok. Please edit this answer if I was incorrect in tech description.

How risky if I develop on Weblogic 10.x and deploy to Weblogic9.2.x?

Recently I took over a relative old project, which is running on weblogic 9.2. I need work on some change requests. I don't know much about weblogic product.
The old DEV-Env is windows based, however I dont have a windows machine. I tried to download Weblogic9.2 for linux (32bits), however I cannot find the link on Oracle website, after quite a lot google, still no working link found.
So the options for me:
find out a working link, download weblogic9.2 and work with it
download and use the 10.x version from oracle
setup a windows box (we have the installer of weblogic9.2 for win)
the 3 is the last thing I want to do. If someone knows where can I get the 9.2 version, it would be great. If there is no weblogic9.2 available, can I work on weblogic10.x and release to 9.2 in production? how risky is it?
Developing in WLS 10.x and deploying in 9.2 may cause some trouble.
There are quite a no of features which have been upgraded in 10.x, such as Java 5 to 6, J2EE 1.4 to 5, Servlet 2.4 to 2.5, JSP 2.0 to 2.1, EJB 2.1 to 3.0.
While most of the features here do have backward compatibility, you have to be extra careful when you develop.
I would suggest to develop based on the lowest common denominator features only, and build on the same server you are deploying it to. (i.e. 10.x has a diff build, and 9.2.x has different one.)
EDIT: There seems to be a authentic binary available on PeopleSoft's FTP site.
It's definitely a risk. Different versions of Weblogic use different jars, so what works on 10.x may not work on 9.x. It's a good practice to have your QA and PROD environments as similar as possible including node setup and startup variables.
If your current PROD deployed code works on 10.x then I would upgrade your PROD environment to 10.x and continue your development on 10.x. If not then do what you can to have 9.x on your DEV environment as well.

Patching a single class in Glassfish

We're experiencing a bug in Glassfish 3.1.2.2 (specifically, in the WSEndpointImpl class in Metro module) which is fixed but due in Glassfish 4.0 or some next release in the 3.1 branch hopefully. As this fix is critical for our application, we would like to patch this class alone and install it somehow to Glassfish, before waiting for the next release. Is this possible? What do you recommend?
Glassfish supports swapping in other versions of certain modules via the Endorsed Standards Override Mechanism and according to the Oracle documentation JAX-WS is among the replaceable components.
You just have to copy the updated version into the /lib/endorsed directory of your domain, but I'm pretty sure you can also put your file in the /lib/endorsed directory of the Glassfish server itself.
See a practical example in this blog entry

Seam 2.2 App on JBoss 7.1?

We have deployed our JBoss Seam 2.2 application on JBoss 5.1 with PostgreSQL as the database. It makes use of EJBs, JPA (Hibernate), JSF (Richfaces and Primefaces), Servlets, and JMS queues and topics. Recently, we've decided to migrate the platform to JBoss 7.1 to take advantage of its lower overhead, as well as to keep in step with changes in technology.
Is it possible to run Seam 2.2 applications on JBoss 7.1? I realize the Hibernate/JPA version is different, and I'm assuming the JSF version is as well. Are there ways to compensate for this? What changes to our code and configuration could I potentially have to make in order to run it on this platform?
The short answer is yes you can migrate your Seam 2.2 app to JBoss AS 7.
The main challenge is going to be classloading because of how class loading is completely re-architected with AS 7.
Instead of me going through all the steps here I simply want to point you to the official documentation of how this was done on one of the sample apps (Seam Booking application). It provides a step-by-step guide on how you can migrate a Seam 2.x app to JBoss AS 7 and also points some of the issues you will face and how you can handle them.
The guide is located here.
Other useful references
JBoss AS 7 Classloading
Seam 2 JPA Example
Good luck!

Struts for IBM Application Server Toolkit

I'm looking to build a Struts 1.2.x application for Websphere, using IBM's Application Server Toolkit. Are there any plugins available for this toolkit (it is a version of Eclipse) that are known to help with this type of development? I am new to Struts so I will also be learning about the technology as I go along, but I want to make it as painless as possible.
A web search has only brought up things such as "MyEclipse", which I can't use in the corporate environment.
I don't know about Application Server Toolkit, but since it's Eclipse based, you might directly use the struts plugin from the Eclipse project. Beware of the version, since it's not based on the very last Eclipse version.
The easiest, albeit costly, route for corporates environments is through Rational Application Developer that IBM provides. It integrates nicely with WebSphere Application Server. It has a struts plug-in build-in.
Try StrutsIDE Eclipse plugin.
the name of the custom eclipse for IBM websphere is Rational Software Architect and i think it comes with a Struts plug-in
This can get tricky depending on the version of Websphere you are using. We have an old Struts 1.1 app that has been around for years. I use an old 5.x version of Websphere to run it, along with what used to be called Websphere Studio Application Developer. It is based on Eclipse, and all the Struts stuff is built in.

Categories