2011-07-27 3 views
1

현재 Liferay 6.0.5의 레이아웃 템플릿에서 포틀릿을 사용하고 있으며 약간의 문제가 있습니다. 나는 Liferay Wiki에서 사용할 수있는 예제를 포함하여 많은 자습서를 시도했다. http://www.liferay.com/community/wiki/-/wiki/Main/Add+runtime+portlets+to+a+layout#section-Add+runtime+portlets+to+a+layout-Related+Articles. 문제는 이들 예제가 모두 나를 위해 올바르게 작동하지 않는다는 것입니다. $ processor.processPortlet에 대한 호출은 아무 것도하지 않습니다. 빈 셀은 레이아웃 템플릿에 의해 생성됩니다.Liferay Portal : 런타임 포틀릿을 올바르게 사용하기 - processor.processPortlet()

다음과 같이 내 템플릿에 내 코드는 다음과 같습니다

<div class="columns-1-2" id="main-content" role="main"> 
    #if ($browserSniffer.isIe($request) && $browserSniffer.getMajorVersion($request) < 8) 
     <table class="portlet-layout"> 
     <tr> 
      <td class="portlet-column portlet-column-only" id="column-1"> 
       $processor.processPortlet("currentPatient_WAR_opportalweb_INSTANCE_r2Be") 
       $processor.processColumn("column-1", "portlet-column-content portlet-column-content-only") 
      </td> 
     </tr> 
     </table> 

       ...... 

    #end 
</div> 

또한이 포틀릿에 대한 호출은 인스턴스 수있는 사용자 정의 포틀릿에 있지만, I가 통화의 많은 다른 유형을 시도했습니다 것을 강조해야한다 인스턴스가 불가능한 포틀릿 및 심지어 Liferay의 주식 포틀릿 :

$processor.processPortlet("tabs_WAR_tabsportlet") 

$processor.processPortlet("58") 

이러한 호출 중 아무 것도 작동하지 않습니다.

평생 기록 로그를 검토했으며이 템플릿,이 템플릿을 사용한 페이지로드, 구문 등과 관련된 로그에 오류가 없습니다.이 특정 호출에 대한 구문 Liferay 6에서 변경되었거나이 설정을 사용하기 위해 환경에서 조정해야 할 설정이 있다면? processPortlet 함수에 대한 호출이 작동하지 않는다면 Liferay 구성에 작동하도록 만들기 위해 특정해야 할 것이 있습니까?

미리 감사드립니다.

답변

1

코드에 어떤 문제도 나타나지 않습니다. 정상적으로 작동합니다.

#if ($browserSniffer.isIe($request) && $browserSniffer.getMajorVersion($request) < 8) 
... 
#end 

당신이 IE6 나 IE7 이외로이 테스트를하는 경우, 당신은 조건부 블록

+0

감사의 내용을 볼 수 없습니다 :하지만 당신은 당신이 조건식 내에서 걸 놓친 것 당신이 이것을 지적하기 위해, 나는 이것을 놓쳤습니다! 다른 영역에 내 processPortlet 호출을 추가하면 문제가 해결됩니다. 감사합니다! –