voyent
Migration from ICEMobile -&gt ICEFaces 4.0  XML
Forum Index -> General Help Go to Page: 1, 2 Next 
Author Message
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Hello All,
I'm stuck... I'm attempting to migrate my Application from ICEMobile to Icefaces 4.0. My WebApp has been upgraded from JBoss 7.1.1 to WildFly 8.2 but I have had limited success.

1) I think downloading the latest nightly build of ICEFaces may help. Does anyone know where I can download the nightly snapshots for icefaces 4.0.0 ?

WildFly starts but produces errors that seems to relate to the version of JSF I'm using. I downgraded the JSF from 2.2.8 to 2.2.7. By changing the SYSTEM/LAYERS/BASE/JAVAX/FACES/API module definition to use the jar javax.faces-2.2.7 downloaded with ICEFACES 4.0 (replaced jboss-jsf-api_2.2_spec-2.2.8) not sure if thats correct but I cannot start the app... I get the following errors...

Deploying /Applications/wildfly-8.2.0.Final/standalone/deployments/HaystackWorksPrj.ear
{"JBAS014671: Failed services" => {"jboss.deployment.unit.\"HaystackWorksPrj.ear\".WeldStartService" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"HaystackWorksPrj.ear\".WeldStartService: Failed to start service
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
javax.enterprise.event.ObserverException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:383)
at org.jboss.weld.security.NewInstanceAction.run(NewInstanceAction.java:33)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:40)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:78)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:98)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:271)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:121)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:258)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:237)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:174)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:133)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:107)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:54)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:42)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:59)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:412)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:83)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:92)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalAccessError: tried to access method com.sun.faces.flow.FlowCDIContext.<init>(Ljava/util/Map;)V from class com.sun.faces.flow.FlowCDIExtension
at com.sun.faces.flow.FlowCDIExtension.afterBeanDiscovery(FlowCDIExtension.java:92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:90)
... 18 more
"}}



and this from the WildFly Server Log


2:56:30,001 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 12) JBAS014613: Operation ("read-attribute") failed - address: ([
("deployment" => "HaystackWorksPrj.ear"),
("subdeployment" => "HaystackWorksEjb.jar"),
("subsystem" => "ejb3"),
("stateless-session-bean" => "ShoppingListsBO")
]) - failure description: "JBAS014508: EJB component for address [
(\"deployment\" => \"HaystackWorksPrj.ear\"),
(\"subdeployment\" => \"HaystackWorksEjb.jar\"),
(\"subsystem\" => \"ejb3\"),
(\"stateless-session-bean\" => \"ShoppingListsBO\")
] is in
state DOWN, must be in state UP"
12:56:31,743 WARN [org.jboss.as.server.deployment] (MSC service thread 1-7) JBAS015850: /Applications/wildfly-8.2.0.Final/standalone/deployments/HaystackWorksPrj.ear/HaystackWorks.war/META-INF/jboss-deployment-structure.xml in subdeployment ignored. jboss-deployment-structure.xml is only parsed for top level deployments.
12:56:32,731 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-16) MSC000001: Failed to start service jboss.deployment.unit."HaystackWorksPrj.ear".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."HaystackWorksPrj.ear".WeldStartService: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_80]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_80]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_80]
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
javax.enterprise.event.ObserverException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:383)
at org.jboss.weld.security.NewInstanceAction.run(NewInstanceAction.java:33)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:40)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:78)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:98)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:271)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:121)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:258)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:237)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:174)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:133)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:107)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:54)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:42)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:59)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:412)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:83)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:92)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalAccessError: tried to access method com.sun.faces.flow.FlowCDIContext.<init>(Ljava/util/Map;)V from class com.sun.faces.flow.FlowCDIExtension
at com.sun.faces.flow.FlowCDIExtension.afterBeanDiscovery(FlowCDIExtension.java:92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:90)
... 18 more

at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:59)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:412)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:83)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:92)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
... 3 more

12:56:32,737 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 1) JBAS014613: Operation ("full-replace-deployment") failed - address: ([]) - failure description: {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"HaystackWorksPrj.ear\".WeldStartService" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"HaystackWorksPrj.ear\".WeldStartService: Failed to start service
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
javax.enterprise.event.ObserverException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:383)
at org.jboss.weld.security.NewInstanceAction.run(NewInstanceAction.java:33)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:40)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:78)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:98)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:271)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:121)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:258)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:237)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:174)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:133)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:107)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:54)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:42)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:59)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:412)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:83)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:92)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalAccessError: tried to access method com.sun.faces.flow.FlowCDIContext.<init>(Ljava/util/Map;)V from class com.sun.faces.flow.FlowCDIExtension
at com.sun.faces.flow.FlowCDIExtension.afterBeanDiscovery(FlowCDIExtension.java:92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:90)
... 18 more
"}}


Any Thoughts?

Any help would be extremely appreciated, I have an app we have been working on for over a year and now nothing works...
judy.guglielmin

Joined: 20/Feb/2007 00:00:00
Messages: 1393
Offline


I don't see any ICEfaces classes mentioned in those error traces. Are you missing some in the .... of what is copied? Not sure why you would think that a snapshot of ICEfaces might be helping.
It appears that you may be using FlowScoped context from (FacesFlow) JSF 2.2 (?). If this is the case, I don't believe that was available with JSF 2.1, so not sure that a straight migration is happening here.
If you are doing a straight migration from JSF 2.1 and ICEmobile (1.2 or 1.3), then ensuring you have the correct JSF 2.2.x with ICEfaces-4 and using the migration guide should be fine for Wildfly.
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Many thanks for your reply and I agree thats why Im stuck. I have only made the upgrade from the ICEMobile to ICEFaces 4.0. So therefore no com.sun.faces.flow.FlowCDIContext problem was expected...

I have followed the migration guide and I have used javax.faces-2.2.7.jar I'll go over it all again but i can't see or understand what the problem is...

Perhaps it has something to do with the file tag used to import images? But I'm not sure of anything...

Any suggestions would be appreciated, many thanks in advance...
The server log is below.

Thu Jul 09 21:05:16 AWST 2015 Thread[exec_HaystackWorksPrj (run)_1,3,exec_HaystackWorksPrj (run)_1] java.io.FileNotFoundException: derby.log (Permission denied)
Initial deploying HaystackWorksPrj to /Applications/wildfly-8.2.0.Final/standalone/deployments/HaystackWorksPrj.ear
Completed initial distribution of HaystackWorksPrj
Deploying /Applications/wildfly-8.2.0.Final/standalone/deployments/HaystackWorksPrj.ear
{"JBAS014671: Failed services" => {"jboss.deployment.unit.\"HaystackWorksPrj.ear\".WeldStartService" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"HaystackWorksPrj.ear\".WeldStartService: Failed to start service
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
javax.enterprise.event.ObserverException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:383)
at org.jboss.weld.security.NewInstanceAction.run(NewInstanceAction.java:33)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:40)
at org.jboss.weld.injection.Exceptions.rethrowException(Exceptions.java:78)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:98)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:271)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:121)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:258)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:237)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:174)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:133)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:107)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:54)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:42)
at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:59)
at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:412)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:83)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:92)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalAccessError: tried to access method com.sun.faces.flow.FlowCDIContext.<init>(Ljava/util/Map;)V from class com.sun.faces.flow.FlowCDIExtension
at com.sun.faces.flow.FlowCDIExtension.afterBeanDiscovery(FlowCDIExtension.java:92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:90)
... 18 more
"}}
/Users/bryancantu/Projects/HaystackWorks/Development/Source/HaystackWorksPrj/nbproject/build-impl.xml:307: The module has not been deployed.
See the server log for details.
judy.guglielmin

Joined: 20/Feb/2007 00:00:00
Messages: 1393
Offline


I just did a search on the
javax.enterprise.event.ObserverException
(in case you haven't already). It appears that having multiple CDI/Weld instances on your classpath can cause this as well.
Did you try a very simple test project first?
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Hi Judy, Thanks for your reply, unfortunately I could not find the problem and created a new project from start and slowly copied across the code. Which worked BUT only partly...

I replaced my mobile components, where necessary with, ACE components but now I have the issue for instance that the <mobi:geolocation tag is not working and the :

<ace:dialog id="MessagePopup"
visible="#{naviBean.tryAgain}"
modal="true"
draggable="false"
showEffect="clip"
hideEffect="fade"
width="360"
height="360"
header="#{msg.welcomeMessageErrorMessageTitle}">
...</ace:dialog>

also does not popup...

I'm at a total lose because i also coded the ace:dialog into the welcomeicefaces.xhtml page that was created in the new project, but this too fails to popup...

I also have the javascript error in the browser (when inspecting the source code: ReferenceError: Can't find variable: ice global code

in the source this error points to the dialog code that follows:
</form></div><script type="text/javascript">ice.ace.lazy.registry['MessagePopup'] = function(){ return ice.ace.lazy("Dialog",["MessagePopup",{"isVisible":true,"minHeight":0,"setFocus":"","width":360,"height":360,"draggable":false,"modal":true,"show":"clip","hide":"fade","title":"Whoops, False Start...","ariaEnabled":true}],"MessagePopup");};ice.ace.instance('MessagePopup').show();</script></div></div><div class="mobi-pagePanel-footer ui-widget-content ui-footer-fixed" id="j_idt10_pgPnlFtr"><div class="mobi-pagePanel-ctr">



I presume its looking for some java script? (ice or the ice.ace.lazy.registry...)

Could it have anything to do with the javascript I added globally to control error message popups??? (I don't thik so...) see below:


//Assign error handling function to a variable
var iceErrorCallback = function iceHandleError(statusCode, responseTxt, responseDOM) {
//Handle all errors by redirecting to an error page
window.location.href = "./internalError.xhtml";
}

//Check if ICEfaces is available
if (ice) {
//Turn off the popups as we plan to handle this ourselves
ice.configuration.disableDefaultIndicators = true;

//Register your error handler as a callback
ice.onServerError(iceErrorCallback);
}


So the big question why is the <mobi:geolocation tag and the <ace:dialog tags not working... Any ideas?...
Many thanks in advance...

judy.guglielmin

Joined: 20/Feb/2007 00:00:00
Messages: 1393
Offline


Whenever you want to add custom javascript to your ICEfaces page, it is always a good idea to use the
ice.onLoad javascript api.
This ensures that all the ice objects you refer to in your custom javascript has been initialized and is available.
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


I'm not sure where to start with this ice.onLoad... The js that I included has worked well up to now and only was there as per the ice faces doc. To control the throwing the popups when the session timed out for example. Has that changed in this release? how do i use the ice.onLoad?
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Hi Judy,
I have removed all my javascript from the app but still have the same errors as I reported before. I think either the javascript (ice.ace) cannot be found, doesn't exist or cannot be loaded. I tried to find the javascript but had not luck... I believe javascript is being loaded so that can't be it.

Where can I find the ice.ace javascript? And how it loaded? or When?
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Hello Judy,
I have tried to check my config and all looks good - using in the Web.xml the:
<context-param>
<param-name>org.icefaces.mandatoryResourceConfiguration</param-name>
<param-value>all</param-value>
</context-param>

and also tried to use the:

<icecore:config mandatoryResource='all' />

in the index.xhtml

but still the same error ice.ace not found...

NOTE: I have installed the sample application that comes with the download of ICEfaces but can't get this to work. The application will not deploy for some reason.
judy.guglielmin

Joined: 20/Feb/2007 00:00:00
Messages: 1393
Offline


Take your javascript and put it in a script for the body tag of your template page here:-
Code:
 <script type="text/javascript">
        ice.onLoad(function() { alert('On load');
             //your custom js here.
        }); 
 </script> 
 


It should then be loaded after all the ICEfaces namespaces are defined (such as ice.ace).

Note that I am assuming that you are not having multiple ICEfaces jars in your classpath. Not sure exactly how you are configuring Wildfly. The last time I tested it, I used this reference:-
https://developer.jboss.org/wiki/DesignOfWildFlyMulti-JSFFeature?_sscc=t
judy.guglielmin

Joined: 20/Feb/2007 00:00:00
Messages: 1393
Offline


if you are trying to deploy the built in showcase app to Wildfly, you should first configure it with the JSF version that your ICEfaces bundle supports (see release notes), then use the following context-param in your web.xml to reflect what version you are using for Wildfly:-
Code:
 <context-param>
        <param-name>org.jboss.jbossfaces.JSF_CONFIG_NAME</param-name>
        <param-value>mojarra-2.2.x</param-value>
     </context-param>
 

then build the showcase app using the web-profile target (ant or maven).
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Hello Judy
I have made the changes you suggested and removed all the other attempts/projects used to try to make things work. Although the to the ice.ace issue has seemed to disappear at some stage don't ask me why, Im not sure if it will return...

Here is the basic summary and status of the migration from ICEMobile 1.3 to IceFaces 4.0;

I have attempted to migrate from:
1) Netbeans 7.4, JBoss 7.1.1 Final, JSF 1.2 to
2) Netbeans 8.0, Wildfly 8.2.0 Final, and JSF 2.2.7

I have spent considerable time on attempting to remove the problems associated with the ice.ace javascript not loading/ not being found.
It appears that this problem has “disappeared” however the migration has been less than easy.
Numerous components that I had used in ICEmobile that are no longer available using the Mobile Tags aren’t SIMPLY interchangeable using ACE components in ICEfaces 4.0.0.

Is a redesign now necessary to differentiate between Desktop, Large and Small Mobile devices? Previously I only differentiated between Large and Small Mobile Devices using the <mobile:smallView and <mobil:largeView and this was enough to use the largeView pages on the desktop.

I cannot understand why the <mobi:smallView> does not disregard all the code found between its tags when the page is displayed on a large screen like a desktop. In-fact when tested on an iPhone Simulator the <mobi:largeView> has no effect and its contents are displayed although they shouldn’t.

<mobi:geolocation is also not working and returns 0 co-ordinates all the time on the desktop where as previously I didn't need to make the distinction between Mobile Devices and Desktop...

Any help would be appreciated, Many thanks in advance.
 Filename index.xhtml [Disk] Download
 Description
 Filesize 4 Kbytes
 Downloaded:  513 time(s)

judy.guglielmin

Joined: 20/Feb/2007 00:00:00
Messages: 1393
Offline


Thanks for your response.
As for the smallView vs largeView tags, please let us know which device you are using and try this link
http://icefaces-showcase.icesoft.org/showcase-mobile.jsf
(online showcase). to see if the device is correctly determined. If the online showcase is working correctly for your device, then please post your code and how you are using it. If the online showcase is not showing correctly for your device, please list the device and (if possible) the user-agent string the device uses. It is a good idea to verify behavior with either the on-line showcase or (Preferrably) the showcase demo app in your distribution bundle.

By iPhone simulator are you referring to the one available in the icemobile project? icemobile-ee-simulator.jar (?).

Can you also please try the mobi:geolocation example in the the demo showcase app on the same server? If there are any errors on the console (js) or server logs, please post them.

Thanks.
bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


I have just restarted the whole environment and now the geolocations are populated but the subsequent pages not...

I feel like Forrest Gump looking at his box of chocolates and making the analogy about "Life being like a box of Chocolates" but I'm looking at the app thinking I wonder what I get this time...

I will look at thinks further to see what I can find out about the current problem... BUT I will restart before adding anything else to the forum...

Many thanks Judy :)

---- old message written before the above ----
Before I run through the suggested approach of testing I need to explain that the development is taking place on my MAC Book Pro. The Simulators used were both the iPhone and iPad Simulators in Xcode. iOS Simulator version Version 8.4 (SimulatorApp-565.9) is associated with Xcode version Version 6.4 (6E35b). At no time was I simulating this using the ICEsoft simulators.

The very same app was working without problems with Mobile version 1.3, Jboss 7.1.1-Final and developed using Netbeans 7.3 or 7.4 (I don't have that here with me at the moment).

So the coded pages should as they previously had. I did some reading and nothing has changed other than ICSfaces 4.0 now contains the mobile components (most of them) that were in ICEMobile 1.3.

I have again attached the page responsible for determining the geo location and the pages to include for smallViews and largeViews. I have also included the index.xhtml and the Welcome.xhtml page that is opened the first time the user enters the application. I have also included the largeView Landing.xhtml page that is loaded the after the Welcome.xhtml. The Landing.xhtml page will only load if the naviBean used in the Welcome.xhtml determines that the geo-coordinates are no equal to Lat:0 Long:0. Also on the iPad Simulator (iOS) that I was asked if the application could use my location, which I said yes too.

Note I had to remove the smallView tags and its contents because duplicate identifies would be otherwise loaded. I have kept the smallView tags in the index.xhtml for completeness.

I will attempt to see if the issue is related to the ui:include statements or the f:view. Although these statements were working before - perhaps something has changed or I have made a mistake... And this would not explain why the welcome page works but the geolocation is not updated... on the Welcome Page no matter how many times I refresh the page...

Many thanks in Advance. I will try and apply your suggestions today and will update this if I have had success.

Cheers
 Filename web.zip [Disk] Download
 Description
 Filesize 17 Kbytes
 Downloaded:  547 time(s)

bcantu

Joined: 02/Nov/2009 00:00:00
Messages: 45
Offline


Hello Judy,

Seems like the next issue seems to be that the ui:includes are now not working. That is the first include that uses a fixed url seems to work but the second include that is supplied from a bean is not rendered. Any ideas?

Is there any JSF requirements with ICEfaces that may have changed in this regard? I think I remember coming across something that was related either to the VIEW or INCLUDE that we needed to be careful of but could not find it...

Thank you Judy

 
Forum Index -> General Help Go to Page: 1, 2 Next 
Go to:   
Powered by JForum 2.1.7ice © JForum Team