2013-05-08 1 views
0

RichFaces 3.3.3.Final 및 PortletBridge 2.1.1과 함께 JSF1.2를 사용하는 Liferay 6.0.6을위한 수많은 포틀릿이있는 애플리케이션이 있으며 모든 것이 정상적으로 작동합니다. RichFaces 4.2.3.Final 및 PortletBridge 3.1.2로 JSF2로 업그레이드하기로 결정했습니다. 탐색을 위해 일부 ajax 사용 가능 명령 단추 (a4j : commandButton 또는 f : ajax와 함께 h : commandButton)를 사용하려고 시도 할 때까지는 모든 것이 정상적으로 보였습니다.이 경우 포틀릿은 탐색을 수행하지만 Liferay 화면이 사라지고 JSF 구성 요소가 화면에 남아 있습니다. 우리가 다시 약간의 탐색 기능을 사용하려고하면, 그것은 곧이 예외 (1-3 후 시도)를 실패 할 것이다 :Richfaces 4.2 및 PortletBridge 3.1의 Liferay 포틀릿 문제

[#|2013-05-08T14:15:33.104+0200|SEVERE|glassfish3.0.1|com.sun.grizzly.config.GrizzlyServiceListener|_ThreadID=26;_ThreadName=Thread-1;|Unblocking keep-alive exception 
java.lang.IllegalArgumentException: Request header is too large 

또한이 같은 몇 가지 흥미로운 것들을 기록합니다

[#|2013-05-08T14:11:42.203+0200|INFO|glassfish3.0.1|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=26;_ThreadName=Thread-1;|Unable to find component with clientId 'pb_richtest_WAR_richtest_INSTANCE_HlC1__j_id1:j_id2', no need to remove it.|#] 

UPDATE를 : 일부 파고 들기 전에 JSF1.2 및 RichFaces 3.3에서 작동하는 경우에도 탐색을 위해 아약스를 사용하는 것이 좋지 않음을 깨달았습니다. 따라서 템플릿을 변경하여 어디서나이를 피할 수있었습니다. 그리고 JBoss PorletBridge에서 Liferay의 Faces Bridge로 바뀌었고 제대로 작동하는 것 같습니다. 위의 모든 예외는 사라지고 네비게이션은 정상적으로 작동합니다.

답변

0

Liferay 6.0.6을 사용하는 경우 3.1.x가 아닌 Liferay Faces 3.0.x를 사용해야합니다. 자세한 내용은 Liferay Faces Version Scheme wiki 기사를 참조하십시오.

+0

우리는 Liferay Faces Bridge가 아닌 JBoss PortletBridge 3.1.2를 사용했습니다. 그러나 그 동안 우리는 JBoss PortletBridge가 Liferay 환경의 다른 구성 요소와 함께 잘 작동하지 않을 수 있다는 사실을 알게되었습니다. 우리는 Liferay Faces Bridge를 시도해 보았고 더 나은 것으로 보인다. – marczeeee