2014-03-06 3 views
0

아래의 환경이 클러스터 된 7스피어 스크립팅 -는 syncNode가

#Sync Node Changes 
    puts "Begin SyncNode.." 
    set Sync1 [$AdminControl completeObjectName type=NodeSync,process=nodeagent,node=Profile01Node600,*] 
    set Sync2 [$AdminControl completeObjectName type=NodeSync,process=nodeagent,node=Profile02Node601,*] 
    $AdminControl invoke $Sync1 sync 
    $AdminControl invoke $Sync2 sync 
    puts "SyncNode Complete" 

WAS 내가있는 노드를 동기화에 사용하는 JACL 스크립트, EAR 파일의 포스트 배포, 내가이 JACL를 호출하고있어 동안 오류 스크립트를 사용하여 변경 사항을 노드에 동기화하십시오. 스크립트를 실행할 때 내가 오류 :

WASX7209I: Connected to process "dmgr" on node wAMLDmgrNode using SOAP connector; The type of process is: DeploymentManager 
    Begin SyncNode.. 
    WASX7017E: Exception received while running file "xxx/xxx/xxx.jacl"; exception information: com.ibm.ws.scripting.ScriptingException: WASX7025E: Error found in String ""; cannot create ObjectName. 

SYNC1이 ''인 이유는 무엇입니까? 명령에 process = nodeagent을 사용해야합니까? 노드 에이전트가 시작되고 중지 된 경우 결과는 어떻게됩니까?

답변

1

오류 메시지가 :

WASX7017E: Exception received while running file "xxx/xxx/xxx.jacl"; exception information: com.ibm.ws.scripting.ScriptingException: WASX7025E: Error found in String ""; cannot create ObjectName. 

... ObjectName를 찾을 수 없음을 알려줍니다. 대부분의 경우 :

  • 하여 노드 에이전트가 다운
  • 노드 이름에 오타 (Profile01Node600 & Profile01Node601)
당신은 (자신의 NodeSync의 MBean) nodeagents하는 확인할 수 있습니다

이 명령을 실행하여 사용할 수있는이

  • :

    $AdminControl queryNames WebSphere:*,type=NodeSync 
    

    오타를 수정할 수 있습니다.

    nodeagent를 사용할 수없는 경우 completeObjectName이 빈 문자열을 반환했는지 확인하여 스크립트에서 해당 노드 에이전트를 처리 할 수 ​​있습니다.

  • +0

    우수, 감사합니다 @Marcin :) 예, nodeagent가 다운되었고 Sync2가 빈 문자열을 반환했습니다. 빈 문자열을 확인하기 위해 스크립트를 변경해야합니다. – Vinoth

    관련 문제