Author |
Message |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 13:02:02
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
Here's what's in the WEB-INF/lib directory of the showcase-portlet application:
2012-07-24 03:55 231,320 commons-beanutils.jar
2012-07-24 03:55 571,259 commons-collections.jar
2012-07-24 03:55 52,915 commons-logging.jar
2012-07-24 03:57 3,021,372 icefaces-ace.jar
2012-07-24 03:57 2,803,530 icefaces-compat.jar
2012-07-24 03:56 336,920 icefaces.jar
2012-07-24 03:54 350,191 icepush.jar
2012-07-24 03:54 2,591,258 javax.faces.jar
2012-07-24 03:54 93,310 jhighlight-1.0.jar
2012-07-24 03:54 20,682 jstl.jar
2012-07-24 03:54 725,247 jxl.jar
2012-07-24 03:55 154,581 krysalis-jCharts-1.0.0-alpha-1.jar
2012-10-03 08:27 29,635 liferay-faces-bridge-api-3.1.0-ga1.jar
2012-10-03 08:27 458,036 liferay-faces-bridge-impl-3.1.0-ga1.jar
2012-10-03 08:27 82,751 liferay-faces-portal-3.1.0-ga1.jar
2012-10-03 08:28 83,829 liferay-faces-util-3.1.0-ga1.jar
2012-10-17 14:24 481,534 log4j.jar
2012-07-24 03:54 1,675,036 poi-3.7.jar
2012-10-17 14:24 70,805 util-bridges.jar
2012-10-17 14:24 185,248 util-java.jar
2012-10-17 14:24 320,300 util-taglib.jar
I can't find a way to export the content of Chrome's Resources tab, but the only things that appear in the Scripts section are everything.jsp and main.js. If you want, I can give you the HTML code as well.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 13:08:47
|
dsinotte
Joined: 14/Nov/2006 00:00:00
Messages: 33
Offline
|
Is there any server console logging showing warnings, exceptions, etc?
Since you are running on Glassfish, it probably ships with it's own version of JSF. Is that version being logged? Does it match the version you've included in the .war file?
You can build a version of the showcase that doesn't include javax.faces.jar by using the web-profile target:
ant clean -Dliferayfaces="true" liferay6.web-profile
However, we generally recommend using the version we ship (Mojarra 2.1.6 is the latest one we include) as there are bugs with more recent versions of Mojarra that can cause problems. Not loading jsf.js and bridge.js are not typically an issue, though.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 13:12:00
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
Here's what's in the log during the loading of the showcase:
WARNING: Error in annotation processing: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager
WARNING: Error in annotation processing: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager
WARNING: Error in annotation processing: java.lang.NoClassDefFoundError: org/springframework/transaction/PlatformTransactionManager
INFO: Initializing Mojarra 2.1.6 (SNAPSHOT 20111206) for context '/showcase-portlet'
INFO: ICEfaces Configuration:
org.icefaces.render.auto: true [default]
org.icefaces.autoid: true [default]
org.icefaces.aria.enabled: true [default]
org.icefaces.blockUIOnSubmit: false [default]
org.icefaces.compressDOM: false [default]
org.icefaces.compressResources: false [default]
org.icefaces.connectionLostRedirectURI: null [default]
org.icefaces.diffConfig: null [default]
org.icefaces.deltaSubmit: false [default]
org.icefaces.lazyPush: true [default]
org.icefaces.generateHeadUpdate: false [default]
org.icefaces.sessionExpiredRedirectURI: null [default]
org.icefaces.standardFormSerialization: false [default]
org.icefaces.strictSessionTimeout: false [default]
org.icefaces.subtreeDiff: true [default]
org.icefaces.windowScopeExpiration = 1000 [default]
org.icefaces.mandatoryResourceConfiguration: none [default]
org.icefaces.uniqueResourceURLs: false
org.icefaces.lazyWindowScope: true [default]
org.icefaces.messagePersistence: true [default]
org.icefaces.disableDefaultErrorPopups: false [default]
org.icefaces.fastBusyIndicator: false [default]
org.icefaces.replayNavigationOnReload: false [default]
INFO: ICEsoft Technologies Inc.
ICEfaces 3.1.0
Build number: 2
Revision: 30215
INFO: 10:57:06,146 INFO [main][HotDeployImpl:178] Deploying showcase-portlet from queue
INFO: 10:57:06,146 INFO [main][PluginPackageUtil:1033] Reading plugin package for showcase-portlet
INFO: PWC1412: WebModule[null] ServletContext.log():Initializing Spring root WebApplicationContext
INFO: 10:57:07,506 INFO [BridgeImpl] Initializing Liferay Faces Bridge 3.1.0-ga1 (Galatia / Aug 21, 2012 AD)
(previous line repeated multiple times)
INFO: ICEpush Email Notification Provider Registered.
INFO: WEB0671: Loading application [showcase-portlet] at [/showcase-portlet]
INFO: CORE10010: Loading application showcase-portlet done in 11,713 ms
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 15:32:00
|
dsinotte
Joined: 14/Nov/2006 00:00:00
Messages: 33
Offline
|
I'm not sure what could be going wrong. I went through the following exercise:
- Downloaded the latest Liferay on Glassfish bundle (liferay-portal-6.1.1-ce-ga2).
- Unzipped and started the server.
- Built and deployed our showcase-portlet application on to the platform.
- Created a new portal page.
- Added an Accordion sample portlet to the page.
And everything worked fine for me. Firebug shows that the bridge was downloaded without issue (uncompressed in this case as I was in JSF Development mode):
http://localhost:8080/web/guest/test?_accordionPanel_WAR_showcaseportlet_javax.faces.resource=bridge.uncompressed.js&p_p_col_count=1&p_p_col_id=column-1&p_p_id=accordionPanel_WAR_showcaseportlet&p_p_lifecycle=2
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 15:36:13
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
Unfortunately, the Liferay bundle with GlassFish is not appropriate for my environment (it's missing a variety of extended GlassFish features that we need). I have a GlassFish installation to which I have deployed the Liferay WAR and then to which I deployed the showcase.
How can I go about diagnosing the problem? This is obviously a show-stopper for me.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 15:41:00
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
I just tried rebuilding the showcase portlet project with:
ant clean -Dliferayfaces="true" liferay6.web-profile
However, I get this:
BUILD FAILED
Target "liferay6.web-profile" does not exist in the project "showcase-portlet".
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 15:55:43
|
dsinotte
Joined: 14/Nov/2006 00:00:00
Messages: 33
Offline
|
You're right. My bad, there is no web-profile for Liferay 6. However, I ran my test using liferay6.servet-profile so I know it does work.
I realize your environment can't use the stock Liferay on Glassfish bundle but you could:
1) Verify that it does work for you on that configuration just to ensure that there isn't something else in your environment causing a problem. If the stock bundle works, then it's very likely something to do with the way Liferay and Glassfish are being combined. Perhaps just a missing or misconfigured setting. Is Liferay being deployed to the root context ("/") or some other context?
2) Crank up the logging. Liferay does occasionally have a habit of "eating" important logging statements. If you can turn on debug/finest level logging, it may show something important that isn't being propagated to the console.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 16:12:37
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
Liferay is deployed to the root context, yes.
How do I crank up the logging for Liferay? I see 311 different logging options; which ones matter for this?
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 17:30:18
|
dsinotte
Joined: 14/Nov/2006 00:00:00
Messages: 33
Offline
|
Not sure what the "311 logging options" refers to.
The logging is a bit complicated by the fact that ICEfaces uses java.util logging while the Liferay Faces Bridge uses Log4j by default if it's available. However, you can include 2 logging config files in WEB-INF/classes:
logging.properties:
handlers = java.util.logging.ConsoleHandler, java.util.logging.FileHandler
org.icefaces.level = FINEST
java.util.logging.ConsoleHandler.level = FINEST
java.util.logging.FileHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
log4.properties:
log4j.rootLogger=INFO, CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c{1}:%L] %m%n
log4j.logger.com.liferay.faces.bridge=DEBUG
This is very blunt and dumps out a lot of info but until we know where things might be going wrong, better too much than too little.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 22/Oct/2012 18:45:42
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
I'm seeing absolutely nothing in the logs after putting those files into the WEB-INF/classes directory. The com.liferay.faces.bridge=DEBUG setting is certainly there as I can see it in the Liferay Control Panel, but there's no additional output from anything.
I have attached the HTML that Liferay is generating. The page contains the Liferay sign in portlet and the ACE PushButton sample portlet.
Filename |
output.html |
Download
|
Description |
|
Filesize |
49 Kbytes
|
Downloaded: |
250 time(s) |
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 23/Oct/2012 08:26:17
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
I realized this morning that I had modified the Liferay logging files, not the showcase logging files. I fixed my error and got the attached output. The bridge.js file shows up in the log but is still not being downloaded to the browser.
Filename |
trace.txt |
Download
|
Description |
|
Filesize |
545 Kbytes
|
Downloaded: |
679 time(s) |
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 23/Oct/2012 10:26:17
|
dsinotte
Joined: 14/Nov/2006 00:00:00
Messages: 33
Offline
|
So in the logging, we can see the resources being processed and added to Liferay's head section:
Code:
INFO: 13:21:14,835 DEBUG [BridgeContextImpl:284] encodeResourceURL fromURL=[http://localhost:8080/web/guest/home;jsessionid=dc880d9de157b8fa2f7013eeae7c?p_p_id=pushButton_WAR_showcaseportlet&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_cacheability=cacheLevelPage&p_p_col_id=column-1&p_p_col_count=2&p_p_col_pos=1&_pushButton_WAR_showcaseportlet_javax.faces.resource=jsf.js&_pushButton_WAR_showcaseportlet_ln=javax.faces]
INFO: 13:21:14,835 DEBUG [HeadResponseWriterLiferayImpl:81] Added resource to Liferays <head>...</head> section, element=[{0}]
One thing to try after the page is loaded, is to copy the "fromURL" and paste it manually into the browser's address bar and see if it can get resolved.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 23/Oct/2012 11:36:28
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
The URL is successfully resolved and I can download the bridge.js file. However, when I examine the HTML output (see one of my previous postings), the URL in question isn't anywhere to be found in the "head" tag.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 23/Oct/2012 11:38:57
|
kdean
Joined: 12/May/2009 00:00:00
Messages: 37
Offline
|
I checked for some of the other .js files; they're in the log but not in the HTML either.
|
|
 |
![[Post New]](/JForum/templates/default/images/icon_minipost_new.gif) 23/Oct/2012 17:50:04
|
dsinotte
Joined: 14/Nov/2006 00:00:00
Messages: 33
Offline
|
I'm at a bit of a loss as to what to try next as it doesn't appear to be a problem related to ICEfaces.
It works in the bundled Glassfish + Liferay version and it appears from the server side that the URLs for the resources are being successfully constructed (i.e. they work when used manually from the browser). They just aren't making it out to the markup.
This would seem to indicate a mis-communication between the Liferay Faces Bridge and the portal container as it's the bridge that's talking to the portal container's API to add these resources to the head. Because we're dealing with portlets, adding stuff to the head is not as straightforward as a non-portlet app so the bridge may use some container specific methods to do it. Perhaps you could pose some of the findings we've made here to the Liferay Faces Bridge forums.
|
|
 |
|