websphere portal EJPEF0001E error처리

java.lang.IllegalStateException: Page: Terminator has a parentID




1.1 에러 로그

[19. 1. 25   11:00:02:330 KST] 00000dd1 Composition   E com.ibm.wps.composition.Composition prepare() EJPEF0001E: ObjectID [ObjectIDImpl 'Z6_01H0IB02OO64C0Q2M2IKEO30J5', CONTENT_NODE, VP: 0, [Domain: cust], DB: 0000-2044201710181BC280165648EAF000B3]의 페이지를 로드할 수 없습니다. 이유: Page: Terminator has a parentID!.

                                 java.lang.IllegalStateException: Page: Terminator has a parentID!

 

 

원인

 1. 하나의 ID를 여러명이 로그인해서 포틀릿 추가 삭제를 할경우 데이터가 꼬여서 생기는 현상

 

http://www-01.ibm.com/support/docview.wss?uid=swg1PK74059

 

해결방법

<request

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:noNamespaceSchemaLocation="PortalConfig_8.0.0.xsd"

    type="update">

<portal action="locate">

 

        <content-node action="delete" objectid="Z6_01H0IB02OO64C0Q2M2IKEO30J5"></content-node>

 

    </portal>

</request>

위에 하이라이트 부분을 로그의 ObjectID 로 변경후 저장

 

방법 1 포탈 관리 콘솔로 처리.

포탈 관리 콘솔에서 포털 설정 -> XML 가져오기 로 위에 파일 가져오기로 처리.



방법 2. xmlAccess 로 처리.

 xmlAccess.sh로 처리.

/data/WebSphere/PortalServer/bin/xmlaccess.sh -user "portal id" -password "password" -url localhost:10039/wps/config -in /data/pageDelete.xml  -out /data/log/pageDeleteResult.xml

websphere portal theme get parameter 웹스피어 포탈 getparameter



((com.ibm.wps.resolver.resource.ResourceHttpServletRequest)request).getRequest().getQueryString() 

websphere portal 로그인 페이지 & 로그실패시 화면 처리하기.


1.//ear 내보내기

./wsadmin.sh -user "관리자 id" -password "관리자패스워드" -c '$AdminApp export wps [내보낼 경로]/wps.ear'


2.//ear 압축해제

./EARExpander.sh -ear [압축해제할파일경로]/wps.ear -operationDir [압축해제할경로]/wps_expanded -operation expand



3.변경하기 

파일 : web.xml. web_merged.xml

위치 : [압축풀고난후 위치] /wps.war/WEB-INF

변경할 소스 : 

<form-login-config>

<form-login-page>/redirect</ form-login-page>

<form-error-page>/error.html<form-error-page>

</form-login-config>

변경 : /redirect -> /logon.jsp

      /error.html -> /error.jsp




4.//ear 재 압축

./EARExpander.sh -ear [압축할파일경로]/wps.ear -operationDir [압축할경로]/wps_expanded -operation collapse



5.//ear 업데이트

./wsadmin.sh -user "관리자 id" -password "관리자패스워드" -c '$AdminApp install [업로드할파일경로]/wps.ear {-update -appname wps -nodeployejb}'



참고 url :  http://www-01.ibm.com/support/knowledgecenter/SS7NQD_8.0.1/com.ibm.wbpm.mon.imuc.doc/inst/tcfg_cognos_portal.html



wps.ear 삭제시 복구방법


준비 작업 


서버가 이중화 되어 있을경우.


1. 아래 경로의 모든 디렉토리와 파일을 다운로드 한다. 

applications : [websphere설치경로]/wp_profile/config/cells/cellName/applications/wps.ear

source : [websphere설치경로]/wp_profile/installedApps/cellName/wps.ear


작업시작 


1. wp_profile에 복사 작업 사항

  applications -> 복사 

  위치 : [websphere설치경로]/wp_profile/config/cells/dmgrCell01/applications

  업로드 : wps.ear


  source -> 복사 

  위치 : [websphere설치경로]/wp_profile/installedApps/devapnportal01Cell

  업로드 : wps.ear


2. cell-------------------------------------------------------------------------

  applications -> 복사 

  위치 : [websphere설치경로]/AppServer/profiles/dmgr01/config/cells/dmgrCell01/applications

  업로드 : wps.ear

  

  아래 위치에 wps가 없을경우 다른portal에서 복사해서 추가

  위치 : [websphere설치경로]/AppServer/profiles/dmgr01/config/cells/dmgrCell01/blas

  업로드 : wps


  아래 위치에 wps가 없을경우 다른portal에서 복사해서 추가

  위치 : [websphere설치경로]/AppServer/profiles/dmgr01/config/cells/dmgrCell01/cus

  업로드 : wps


-------------------------------------------------------------------------


위에 파일 복사 

위치 : [websphere설치경로]/AppServer/profiles/dmgr01/config/cells/dmgrCell01/nodes/devapnportal01Node

파일 : serverindex.xml


<serverEntries 엔트리 밑에 아래 부분이 없을경우

"<deployedApplications>wps.ear/deployments/wps</deployedApplications>"

위에 추가




밑에 커멘드를 실행 

./wsadmin.sh -user wasadmin -password amore123 -c '$AdminApp install [서버 wps.ear업로드 경로]/wps.ear {-update -appname wps -deployejb -deployejb.classpath [websphere설치경로]/PortalServer/base/wp.base/shared/app/wp.base.jar}'


위에 작업이 제대로 실행되지 않을시에 실행

[websphere설치경로]/ConfigEngine/ConfigEngine action-modify-attributes-ear-wps



그리고 

/ibm/console 들어가서  

애플리케이션->애플리케이션 유형->WebSphere 엔터프라이즈 애플리케이션->wps 


참조-> 자원참조 -> javax.sql.DataSource 의 jndi연결이 제대로 연결되어 있는지 확인후 

제대로 연결이 되어있지않을경우 제대로 연결시켜준다. 


portal server restart; 


참고 url : http://www-10.lotus.com/ldd/portalwiki.nsf/dx/04282009073724PMWEBVPX.htm

+ Recent posts