Sun Java System Application Server Enterprise Edition 8.1 2005Q2 릴리스 노트

샘플

이 절에서는 Application Server 8.1 제품에 포함된 샘플 코드와 관련된 알려진 문제점과 해결 방법을 설명합니다.

버그 ID 

요약 

6195092 

setup-one-machine-cluster는 Windows에서는 중단되지만 Solaris에서는 작동합니다. mqfailoverCtrl+C를 눌러 취소한 다음 다시 실행해야 합니다.

install_dir\samples\ee-samples\failover\apps\mqfailover\docs\index.html에서 다음 명령을 실행합니다.

  • 콘솔 1


    cd install_dir\samples\ee-samples asant start-mq-master-broker1
  • 콘솔 2


    cd install_dir\samples\ee-samples asant start-mq-cluster-broker1
  • 콘솔 3


    cd install_dir\samples\ee-samples asant start-mq-cluster-broker2
  • 콘솔 4


    cd install_dir\samples\ee-samples asadmin start-domain domain1

다른 Enterprise Edition 샘플에 대해 asant setup-one-machine-cluster-without-ha 또는 asant setup-one-machine-cluster-with-ha를 이미 실행한 경우에는 asant configure-mq를 실행하거나 asant setup-one-machine-cluster-and-configure-mq를 실행합니다. 이 경우 명령은 성공적으로 실행된 것처럼 보입니다.


start_nodeagent: [echo] Start the node agent cluster1-nodeagent 
[exec] Command start-node-agent executed successfully.

그러나 그런 다음에 시스템이 중단됩니다. 

해결 방법

현재는 해결 방법이 없습니다. 이 문제는 Windows에서 이 ant 대상을 사용하는 모든 Enterprise Edition 샘플에 비슷한 영향을 미칩니다. 해결 방법은 중단된 프로세스에서 벗어나 Ctrl+C를 눌러 중단된 프로세스를 끝낸 다음 다시 실행하는 것입니다.

6198003 

asadmin 배포 지침에 따라 MQ 페일오버 샘플 응용 프로그램을 실행하기 전에 JMS 자원을 만들어야 한다는 점이 설명서에 명시적으로 설명되어 있지 않습니다.

다음과 같은 오류가 발생합니다.  


/opt/SUNWappserver/domains/domain1/config/sun-acc.xml -name 
MQFailoverTestClient -textauth -user j2ee -password j2ee
ov 18, 2004 10:50:17 PM com.sun.enterprise.naming.NamingManagerImpl 
bindObjects
SEVERE: NAM0006: JMS Destination object not found: jms/durable/TopicA
Nov 18, 2004 10:50:18 PM com.sun.enterprise.naming.NamingManagerImpl 
bindObjects
SEVERE: javax.naming.NameNotFoundException
javax.naming.NameNotFoundException

asadmin deploy 명령을 사용하여 수동 배포를 수행할 경우 JMS 자원을 직접 만들어야 한다는 점과 샘플 응용 프로그램 배포를 위해 제공된 ant 대상을 사용해야 한다는 점이 명시적으로 설명되어 있지 않습니다.

해결 방법

응용 프로그램을 실행하는 데 필요한 JMS 자원을 만드는 build.xml 스크립트에 asant 배포 대상을 사용합니다.

6198239 

Linux에서 웹 서비스/보안 샘플에서 인증서를 만드는 중 런타임 오류가 표시됩니다. 

install_dir/samples/webservices/security 샘플(basicSSl)을 Linux에 배포할 때 인증서는 만들어지지 않고 다음과 유사한 오류가 발생합니다.


generate_certs: [echo] ***Exporting certificate from NSS database 
[exec] Result: 1 [echo] ***Generating Java Keystore from generated 
certificate [exec] keytool error: java.lang.Exception: Input not an 
X.509 certificate [exec] Result: 1 [echo] ***Generating Java trust 
store from generated certificate [exec] keytool error: java.lang.
Exception: Input not an X.509 certificate [exec] Result: 1
.
.
.
generate_certs: [echo] ***Exporting server certificate from NSS database to 
a PKCS12 certificate file [exec] /opt/sun/appserver/lib/pk12util: /usr/lib/
libnss3.so: version `NSS_3.9' not found (required by /opt/sun/appserver/lib/
pk12util) [exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so: 
version `NSS_3.6' not found (required by /opt/sun/appserver/lib/pk12util) 
[exec] /opt/sun/appserver/lib/pk12util: /usr/lib/libnss3.so: version 
`NSS_3.7' not found (required by /opt/sun/appserver/lib/pk12util) [exec] 
Result: 1

문제는 Linux 설치에서 NSS 라이브러리가 Solaris 설치와 다른 위치에 있다는 점입니다. Linux에서 배포할 때 LD_LIBRARY_PATH가 올바른 NSS 라이브러리를 가리키는지 확인해야 합니다. LD_LIBRARY_PATH를 사용자 환경 또는 install_dir/bin/asant 쉘 래퍼 스크립트에서 설정합니다.

해결 방법

다음 중 한 가지를 수행합니다. 

  • LD_LIBRARY_PATH=/opt/sun/private/lib를 설정합니다.

  • install_dir /bin/asant 스크립트에 다음 줄을 추가합니다.


    LD_LIBRARY_PATH=$AS_NSS:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH