Sun GlassFishTM Enterprise Server 제품은 Java EE 응용 프로그램 및 Java 웹 서비스를 개발 및 배포하는 데 사용되는 JavaTM Platform, Enterprise Edition (Java EE) 6 플랫폼 호환 서버입니다. 이 서버를 프로덕션용으로 사용하는 것은 무료입니다. Sun GlassFish Enterprise Server는 개발, 배포 및 재배포가 무료입니다. 재배포에 관심이 있으신 고객은 Sun OEM 판매 부서에 연락하여 재배포 라이센스에 대해 문의하십시오.
Sun GlassFish Enterprise Server v3 릴리스 노트는 새로운 기능, 하드웨어와 소프트웨어 요구 사항, 알려진 문제 및 제공된 해결 방법을 비롯하여 Enterprise Server v3 릴리스에 대한 중요한 정보를 포함하고 있습니다.
소프트웨어를 설치하고 설정하기 전에 이 문서를 확인하고 Sun GlassFish Enterprise Server v3를 사용하기 전에 이 문서를 읽어 보십시오. 최신 내용을 확인하려면 이 문서를 정기적으로 참조하십시오.
이 절에서는 Sun GlassFish Enterprise Server v3 릴리스 노트의 변경 기록을 제공합니다.
표 1–1 개정 내역
날짜 |
변경 설명 |
---|---|
2009년 12월 |
초기 릴리스. |
2010년 1월 |
재배포 관련 정보 추가됨 알려진 문제에 문제 11427 추가됨 알려진 문제에 문제 11428 추가됨 알려진 문제에 문제 11439 추가됨 알려진 문제에 문제 6852796 추가됨 |
Sun GlassFish Enterprise Server v3에서는 Java 기술 기반의 웹 기술 및 Java Platform, Enterprise Edition(Java EE 플랫폼) 응용 프로그램을 개발하고 배포하기 위한 서버를 제공합니다.
여기서 소개할 Enterprise Server의 새로운 기능은 다음과 같습니다.
Java EE 6에는 프로필 개념이 도입되었습니다. 프로필은 특정 개발자 커뮤니티와 응용 프로그램 유형에 부합하는 Java EE 기술과 API의 집합입니다.
Sun GlassFish Enterprise Server v3 배포를 통해 구현되는 프로필은 다음과 같습니다.
전체 플랫폼 프로필. 이 프로필은 엔터프라이즈 응용 프로그램 개발을 위해 전체 Java EE API 세트가 필요한 개발자용으로 설계되었습니다. 전체 플랫폼 프로필은 Sun GlassFish Enterprise Server v3 설치 시 설치됩니다. 해당 프로필은 Java EE 6 SDK 설치의 일부로도 설치됩니다.
웹 프로필. 이 프로필은 전체 플랫폼의 일부인 웹 기술을 포함하며 전체 Java EE API 세트가 필요하지 않은 개발자용으로 설계되었습니다. 웹 프로필은 Sun GlassFish Enterprise Server v3 웹 프로필 설치 시 설치됩니다. 이 프로필은 Java EE 6 Web Profile SDK에서도 설치됩니다.
Java EE 6 SDK 배포는 Java EE 6 SDK 다운로드 페이지에서 제공됩니다.
각 프로필의 API 목록은 Java EE 6 표준을 참조하십시오.
Sun GlassFish Enterprise Server v3에서는 유연성을 제공하고 런타임 성능을 개선하기 위해 GlassFish 코드 페이지가 모듈로 분할되었습니다. 모듈식 아키텍처는 OSGi Alliance 표준을 기반으로 구현되며 Enterprise Server v3 모듈과 기타 모듈의 재사용을 가능하게 합니다.
이러한 설계에서는 배포된 응용 프로그램에 필요한 모듈만을 사용할 수 있습니다. 런타임을 사용하는 응용 프로그램에 대해서만 런타임이 사용되며, 전체 시스템 재설치 없이 업그레이드 구현이 가능합니다. 이 변경으로 시작 시간, 메모리 소비 및 디스크 공간 요구 사항이 최소화됩니다.
모듈식 설계에서는 다음 작업을 수행할 수 있습니다.
OSGi 번들 배포
라이브러리 JAR(Java 아카이브) 파일 배포
다른 구현으로 기존 기능 대체
새로운 Sun GlassFish Enterprise Server v3 컨테이너 SPI(System Provider Interface)는 Enterprise Server에서 적시에 호출할 수 있도록 컨테이너 개발자가 구현해야 하는 인터페이스를 정의합니다. 이 변경으로 Enterprise Server 사용자는 관리 명령 및 그래픽 애드온 구성 요소를 추가하는 방법으로 사용자 지정 응용 프로그램 서버를 만들 수 있습니다.
Enterprise Server에서는 Ruby on Rails와 같은 새로운 모듈도 효과적으로 지원합니다.
이제 업데이트 도구가 Sun GlassFish Enterprise Server v3 관리 콘솔에 포함되었습니다. 이 도구는 기존 Enterprise Server v3 기능 확장에 사용할 수 있는 관련 응용 프로그램 및 애드온 구성 요소의 관련 응용 프로그램 관리를 용이하게 합니다.
관리 콘솔은 탐색 트리를 통한 업데이트 도구 페이지 액세스를 제공합니다. 업데이트 도구 페이지는 다음을 표시하는 탭으로 구성됩니다.
설치되는 구성 요소
설치된 구성 요소에 대해 사용 가능한 업데이트
제공되고 설치 가능한 애드온 구성 요소
관리 콘솔에서 업데이트 도구을 통합하므로 관리자가 간편하게 Enterprise Server를 확장하고 사용 가능한 업데이트를 확인할 수 있습니다. updatetool 명령을 통해 독립형 버전의 Update Tool을 사용할 수도 있습니다. Update Tool에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 Update Tool을 참조하십시오.
관리 콘솔에서 Update Tool 인터페이스를 사용하여 기존 구성 요소를 업데이트할 수 없습니다. 설치된 구성 요소를 업데이트하거나 제거하려면 독립형 명령줄 버전이나 pkg 명령을 사용해야 합니다.
Update Tool은 Update Center 프로젝트에서 개발됩니다. 관리 콘솔에서는 Update Center 2.3 API를 통해 사용 가능한 구성 요소, 버전 및 날짜의 목록을 표시합니다. Update Center 2.3에 대한 자세한 내용은 Release Notes for Update Center 2.3을 참조하십시오.
Update Tool은 구성 및 배포된 응용 프로그램을 이전 버전의Enterprise Server에서 최신 버전으로 마이그레이션하는 데 사용되는 Upgrade Tool과 다릅니다. Upgrade Tool에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Upgrade Guide를 참조하십시오.
신속한 응용 프로그램 개발 및 배포를 위해 Sun GlassFish Enterprise Server v3에서는 다양한 스크립팅 언어를 지원합니다. 스크립팅 언어를 사용하면 Java 기술 중심의 개발이 아닌 영역에서도 Enterprise Server를 적용할 수 있습니다. 다음을 비롯한 스크립팅 언어가 지원됩니다.
JRuby & Rails: 웹 응용 프로그램 개발용 스크립팅 언어 및 프레임워크
Grails: Groovy 프로그래밍 언어를 사용하고 Java 웹 개발을 보완하는 웹 응용 프로그램 프레임워크
Jython & Django: Python 언어의 Java 구현 및 Python과 Python 구현(예: Jython)용 웹 프레임워크
jMaki: Ajax 웹 응용 프로그램 개발용 프레임워크
이 스크립팅 언어 지원은 업데이트 도구를 통해 제공되는 구성 요소에 의해 이루어집니다.
Sun은 메시지 최적화, 안정적인 메시징 및 보안과 같은 웹 서비스 엔터프라이즈 기술의 상호 운용성을 위해 Microsoft와 긴밀하게 협력하고 있습니다. WSIT는 이러한 협력 작업을 통해 제공하는 제품입니다. WSIT는 Microsoft .NET 3.5와의 상호 운용성을 제공하는 고성능 확장형 웹 서비스인 Metro 2.0의 일부입니다. Metro 2.0은 Enterprise Server v3의 전체 배포에 포함됩니다.
WSIT는 엔터프라이즈 기능을 지원하기 위해 다양한 오픈 웹 서비스 사양을 구현한 것입니다. WSIT에는 메시지 최적화, 안정적인 메시징 및 보안 외에도 부트스트랩 및 구성 기술이 포함되어 있습니다. WSIT는 Java 플랫폼에 현재 구축되어 있는 코어 XML 지원을 포함하여 기존 기능을 사용 또는 확장하고 추가적으로 다음과 같이 상호 운용 가능한 웹 서비스를 새로 지원합니다.
부트스트랩 및 구성
메시지 최적화 기술
안정적인 메시징 기술
보안 기술
이 릴리스에서는 appclient 유틸리티가 다음과 같이 향상되었습니다.
appclient 유틸리티는 Java 응용 프로그램 실행기(java) 구문과 유사한 대체 명령줄 구문을 허용합니다.
-targetserver 옵션은 지정할 대상의 서버와 포트 번호를 활성화하기 위해 추가됩니다.
응용 프로그램 클라이언트에서 스플래시 화면이 지원됩니다.
자세한 내용은 appclient(1M) man 페이지를 참조하십시오.
Sun GlassFish Enterprise Server v3는 EclipseLink를 JPA(Java Persistence API) 2.0 공급자로 사용합니다. EclipseLink도 JSR 317에 대한 참조 구현입니다. EclipseLink 기능에 대한 최신 정보는 EclipseLink 2.0 Release Notes를 참조하십시오.
Sun GlassFish Enterprise Server v3에서는 대부분의 HTTP 서비스 설정이 새로운 네트워크 서비스 구성으로 옮겨졌습니다. 자세한 내용은 Sun GlassFish Enterprise Server v3 Upgrade Guide를 참조하십시오.
Sun GlassFish Enterprise Server v3에서는 기본적으로 관리 자격 증명을 입력하라는 메시지가 표시되지 않습니다. 이것은 이전 릴리스와 달라진 점입니다.
ZIP 파일을 사용하여 Enterprise Server를 설치하는 경우 관리 콘솔을 실행하거나 asadmin 유틸리티 및 원격 하위 명령을 사용하여 관리 작업을 수행할 때 관리 자격 증명을 입력하라는 메시지가 표시되지 않습니다.
파일 자동 압축 해제 및 그래픽 설치 프로그램을 사용하여 Enterprise Server v3를 설치하는 경우, 설치 중에 Administration Settings 페이지에서 사용자 이름과 암호를 지정하지 않은 한 관리 자격 증명을 입력하라는 메시지가 표시되지 않습니다. 해당 페이지에서 기본값을 적용한 경우 기본 관리 사용자는 admin이고 암호 필드는 비어 있습니다.
암호를 사용하지 않는 관리 사용자가 한 명만 있는 경우 인증되지 않은 로그인이 허용됩니다. 관리자 인증에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 To Log In to a Domain을 참조하십시오.
Enterprise Server 설치 후 관리자 인증 요구 사항을 변경할 수 있습니다. 관리 콘솔을 사용하여 해당 작업 및 관련 작업 수행에 대한 자세한 내용은 관리 콘솔 온라인 도움말을 참조하십시오. 명령줄 인터페이스 사용에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 Administering Passwords를 참조하십시오.
asadmin 유틸리티 자체용 옵션과 해당 하위 명령용 옵션을 명확히 구분하기 위해 asadmin 유틸리티의 동작이 수정되었습니다. 이제 asadmin 유틸리티 자체용 옵션을 하위 명령 앞에 사용할 수 있습니다. 하지만 다른 릴리스와의 호환성을 위해 asadmin 유틸리티 자체용 옵션을 하위 명령 뒤에 계속 사용할 수 있지만 향후 이러한 구문에 대한 지원이 중단될 것입니다.
자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 Using the asadmin Utility를 참조하십시오.
Sun GlassFish Enterprise Server v3에는 이전 릴리스와 다른 다음과 같은 파일 레이아웃 변경 사항이 포함되어 있습니다.
기본 설치 디렉토리는 다음과 같습니다.
Solaris, Linux 및 Mac OS X 시스템: 사용자의 홈 디렉토리/glassfishv3
Windows 시스템: SystemDrive :\glassfishv3
glassfish 하위 디렉토리가 그 아래의 다른 하위 디렉토리와 함께 추가되었습니다.
제품 라이브러리가 glassfish/lib에서 glassfish/modules로 이동되었습니다.
osgi 디렉토리가 추가되었습니다.
법률 파일용으로 지정된 디렉토리가 추가되었습니다. 이제 라이센스 및 저작권 파일이 glassfish/legal에 있습니다.
Sun GlassFish Message Queue는 하위 디렉토리가 아닌 최상위 디렉토리에 설치됩니다.
Java DB는 하위 디렉토리가 아닌 최상위 디렉토리에 설치됩니다.
Sun GlassFish Enterprise Server v3에서는 서버 특정 Ant 작업을 제공합니다. 해당 작업을 위해서는 Ant를 설치해야 합니다. asant 유틸리티는 해당 릴리스에 포함되지 않습니다.
Enterprise Server는 Apache Ant 버전 1.6.5 이상과 호환됩니다. Ant를 설치하지 않은 경우 Update Tool을 사용하여 설치할 수 있습니다.
Update Tool에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 Update Tool을 참조하십시오. Ant 작업에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Application Development Guide의 3 장, Using Ant with Enterprise Server를 참조하십시오.
Sun GlassFish Enterprise Server v3는 모듈식이고 확장 가능하므로 정적 DTD 파일에 대해서는 domain.xml 파일을 검증할 수 없습니다. 대신 소스 코드의 @Configured 주석에 대해 domain.xml 파일을 검증합니다. domain.xml 파일 구문에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Domain File Format Reference를 참조하십시오.
Enterprise Server v3와 Enterprise Server v2 간에는 응용 프로그램 관련 차이점이 있습니다. 이 절에서는 이러한 차이점의 일부에 대해 설명합니다.
Enterprise Server v3에서 배포용 force 옵션의 기본값은 false입니다. Enterprise Server v2에서는 이 기본값이 true였습니다. Enterprise Server v3에서는 재배포를 위해 이 옵션을 명시적으로 true로 설정해야 합니다. 이 옵션은 업그레이드 프로세스 중에 자동으로 설정되지 않습니다. 이러한 변경은 기존 응용 프로그램의 내용을 실수로 덮어쓰는 경우를 방지하기 위해서입니다. 해당 사항은 관리 콘솔과 명령줄 유틸리티 모두에 적용됩니다.
asadmin redeploy 명령도 Enterprise Server v3의 새로운 항목이며 --force=true에 해당하는 기능을 제공합니다. force 옵션은 deploy 명령(명령줄 인터페이스)과 deploy 화면(콘솔)에만 적용할 수 있으며 redeploy 명령과 redeploy 화면에는 적용할 수 없습니다.
Enterprise Server v2에는 응용 프로그램 저장소용으로 applications/j2ee-apps 및 applications/j2ee-modules와 같은 두 개의 하위 디렉토리가 포함되었습니다. Enterprise Server v3에는 이러한 하위 디렉토리가 없습니다(j2ee-apps 또는 j2ee-modules 수준 없음). Enterprise Server v2에서는 applications/j2ee-modules/foo에 상주하던 foo.war과 같은 독립형 모듈의 배포가 Enterprise Server v3에서는 이제 applications/foo에 상주합니다. 엔터프라이즈 응용 프로그램과 독립형 모듈은 기본적으로 동일한 이름 공간을 공유하므로 중간 디렉토리 계층이 필요하지 않습니다.
web-module, ejb-module과 같은 이전 요소는 Enterprise Server v3에서 제공되지 않으며 새로운 응용 프로그램 요소로 대체되었습니다. 응용 프로그램 요소에 대한 자세한 내용은Sun GlassFish Enterprise Server v3 Domain File Format Reference의 application을 참조하십시오.
업그레이드 중에 Enterprise Server v2 응용 프로그램은 domain.xml의 새로운 응용 프로그램 요소와 함께 새로운 applications/ 위치에 재배포됩니다. Enterprise Server v3에 배포된 모든 새로운 응용 프로그램은 새로운 디렉토리 구조 및 요소로 배포됩니다.
Java EE 6은 Java EE 5보다 더 엄격한 JAR 가시성 규칙을 적용합니다. 이로 인해 일부 기존 응용 프로그램이 실패할 수 있습니다.
Java EE 6 사양에서는 EAR(엔터프라이즈 아카이브) 파일에서 볼 수 있는 JAR 파일에 대해 엄격한 규칙을 적용합니다. 특히 섹션 EE.8.3.3을 참조하십시오. 무엇보다도 응용 프로그램 클라이언트 모듈은 응용 프로그램 클라이언트 JAR 파일의 매니페스트 Class-Path가 EJB JAR 파일을 명시적으로 참조하지 않는 경우 어떤 EJB JAR 파일에도 액세스할 수 없습니다.
해당 사항은 응용 프로그램 클라이언트가 EAR 파일의 모든 EJB JAR 파일 및 EAR 파일의 최상위 레벨의 모든 JAR 파일에 자동으로 액세스할 수 있었던 Enterprise Server v2에서 변경된 사항입니다. 보다 엄격해진 사양 언어를 준수하기 위해 Enterprise Server v3에서는 이러한 JAR 파일에 대한 액세스를 응용 프로그램 클라이언트에 자동으로 제공할 수 없습니다.
Java EE 6에서 지정하는 보다 엄격한 새로운 작동을 다음과 같이 적용할 수 있습니다.
응용 프로그램이 Enterprise Server v2 도메인에 배포되는 경우 Upgrade Tool은 해당 도메인의 해당 응용 프로그램에 대해 Enterprise Server v2 작동을 유지합니다. 업그레이드에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Upgrade Guide를 참조하십시오.
클라이언트의 매니페스트 Class-Path를 변경하여 종속된 JAR 파일을 명시적으로 참조하도록 합니다. Class-Path는 EAR 파일의 라이브러리 디렉토리에 있는 JAR 파일을 나열하지 않아야 합니다. 사양에서 요구한 대로 이 디렉토리의 모든 파일은 EAR 파일의 모든 모듈에 대해 사용 가능합니다. 이 디렉토리는 기본적으로 /lib이거나 application.xml 설명자의 library-directory를 사용하여 다른 디렉토리로 설정할 수 있습니다.
선택적 --property compatibility=v2 설정을 사용하여 EAR 파일을 배포합니다. 이렇게 하면 Enterprise Server v3에 배포되는 경우 해당 응용 프로그램에 대한 Enterprise Server v2 작동을 유지할 수 있습니다.
이러한 작동 변경 사항은 Sun GlassFish Enterprise Server v3 Upgrade Guide의 1 장, Application Server Compatibility Issues에서도 설명합니다.
Sun GlassFish Enterprise Server v3에서 deploy --retrieve 및 get-client-stubs 명령을 실행해도 Enterprise Server v2에서와 같이 로컬 디렉토리에 더 이상 하나의 JAR 파일 만을 다운로드하지 않습니다. Enterprise Server v3에서 localdir/myAppClient.jar이 여전히 생성되고 appclient 명령에서 대상으로 사용할 수 있지만 다른 파일을 포함할 수 있는 또 다른 디렉토리인 localdir/myAppClient도 생성됩니다.
응용 프로그램 클라이언트 구성 요소를 한 위치에서 다른 위치로 이동하기 위한 방법으로 하나의 Enterprise Server v2 다운로드 JAR 파일을 일반적으로 복사하는 경우 Enterprise Server v3에서는 작동하지 않게 됩니다. 지원되는 방법은 해당 기능용 asadmin get-client-stubs 명령을 사용하는 것입니다. 명령에 대한 자세한 내용은 get-client-stubs(1)을 참조하십시오.
하지만 계속 복사하려는 경우 localdir/myAppClient.jar 파일(Enterprise Server v2에서와 같이)뿐만 아니라 localdir/myAppClient 디렉토리의 모든 내용을 복사해야 합니다.
이 절에서는 Sun GlassFish Enterprise Server v3 제품을 설치하기 전에 충족해야 할 요구 사항을 나열합니다.
Sun GlassFish Enterprise Server v3는 200MB 이상의 여유 디스크 공간이 있어야 설치되며, 100MB 이상의 사용 가능 메모리가 있어야 실행됩니다.
다음 표에서는 지원되는 운영 체제를 나열하며 각각의 최소 메모리, 권장 메모리, 최소 디스크 공간, 권장 디스크 공간 및 JVM(Java Virtual Machine)도 함께 소개합니다.
아래 나열된 대로 Enterprise Server에는 JDKTM 릴리스 6이 필요합니다. 필요한 JDK 6 소프트웨어의 최소(및 인증) 버전은 운영 체제에 따라 다릅니다. 플랫폼 특정 요구 사항은 필요한 JDK 버전을 참조하십시오.
표 1–2 지원되는 운영 체제
운영 체제 |
최소 메모리 |
권장 메모리 |
최소 디스크 공간 |
필요 하드 디스크 공간 |
JVM(Java Virtual Machine) |
---|---|---|---|---|---|
SolarisTM 운영 체제 |
|||||
Solaris 10(SPARCTM 플랫폼) |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 및 64비트 |
Solaris 10(x86 플랫폼) |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 및 64비트 |
OpenSolarisTM 2009.06 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 |
Linux |
|||||
Red Hat Enterprise Linux 5.0 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 및 64비트 |
Red Hat Enterprise Linux 4.0 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 |
SUSE Linux Enterprise Server 10 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 |
Ubuntu Linux 8.04 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 |
Windows |
|||||
Windows 7 Professional |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 및 64비트 |
Windows XP Professional SP3 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 |
Windows 2008 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 |
Windows Vista Business |
1GB |
2GB |
250MB의 여유 공간 |
500MB |
JDK 6 32비트 |
Mac OS |
|||||
Mac OS X 10.5 및 10.6 |
1GB |
2GB |
250MB의 여유 공간 |
500MB의 여유 공간 |
JDK 6 32비트 |
UNIX® 플랫폼에서는 uname 명령을 사용하여 운영 체제 버전을 확인할 수 있습니다. 디스크 공간은 df 명령을 사용하여 확인할 수 있습니다.
Enterprise Server를 Microsoft Windows 플랫폼에서 실행하는 경우 FAT 또는 FAT32 대신 NTFS 파일 시스템을 사용합니다.
시스템 가상화는 여러 운영 체제(OS) 인스턴스를 공유 하드웨어에서 독립적으로 실행할 수 있도록 해주는 기술입니다. 기능적으로, 가상화된 환경에서 호스트된 OS에 배포된 소프트웨어는 일반적으로 기반 플랫폼이 가상화되었는지를 인식하지 못합니다. Sun에서는 선별된 시스템 가상화와 OS 조합에서 Sun Java System 제품을 테스트하여 Sun Java System 제품이 적절한 규모로 적절하게 구성된 가상화된 환경에서 가상화되지 않은 시스템에서처럼 계속해서 작동하는지를 검증합니다. 가상화된 환경에서의 Sun Java System 제품 지원에 대한 자세한 내용은 System Virtualization Support in Sun Java System Products 를 참조하십시오.
임시 디렉토리에는 다음 소프트웨어 설치에 사용 가능한 공간이 충분히 있어야 합니다.
Sun GlassFish Enterprise Server: 최소 35MB
SDK: 최소 250MB
사용하지 않는 포트가 7개 있어야 합니다.
설치 프로그램에서 사용 중인 포트를 자동으로 감지하여 기본 설정을 위해 사용되고 있지 않은 포트를 제시합니다.
초기 기본 포트 지정이 다음 표에 나와 있습니다. 이 기본 포트 번호가 사용 중인 경우 설치 프로그램은 동적 포트 범위에서 임의로 선택한 포트 번호를 지정합니다. 선택된 포트 번호가 다음 사용 가능 포트 번호가 아닐 수도 있습니다.
표 1–3 Enterprise Server v3의 기본 포트 지정
포트 번호 |
사용 |
---|---|
4848 |
관리 콘솔 |
8080 |
HTTP |
8081 |
HTTPS |
8686 |
순수 JMX 클라이언트 |
3700 |
IIOP |
3820 |
IIOP/SSL |
3920 |
IIOP/SSL(상호 인증) |
Solaris 10 운영 체제를 사용하는 경우 다음 표에 나열된 대로 해당 플랫폼에 적합한 패치를 적용해야 합니다.
플랫폼 |
패치 번호 |
---|---|
SPARC 플랫폼 |
119963-08 |
x86 플랫폼 |
119964-08 |
또한 Sun 권장 패치 클러스터가 적용되었는지도 확인해야 합니다.
이러한 패치와 패치 클러스터는 SunSolveSM 프로그램 웹 사이트에서 사용 가능합니다.
패치를 다운로드하려면 PatchFinder 링크를 클릭한 다음 Patch ID 필드를 사용하여 패치를 찾으십시오.
패치 클러스터를 다운로드하려면 Downloads 섹션에서 Patch Cluster and Patch Bundle Downloads 링크를 클릭한 다음 권장되는 패치 클러스터의 링크를 클릭하십시오.
Sun GlassFish Enterprise Server v3 설치에는 JDK 릴리스 6이 필요합니다.
Enterprise Server에 필요한 최소(및 인증) JDK 소프트웨어 버전은 운영 체제에 따라 다릅니다.
Mac OS X를 제외한 지원되는 운영 체제의 경우 필요한 최소 버전은 1.6.0_17입니다.
Mac OS X 운영 체제의 경우 필요한 최소 버전은 1.6.0_15입니다.
Enterprise Server에 사용하는 다음 바이너리 파일은 JRETM(Java Runtime Environment) 소프트웨어가 아닌 JDK 소프트웨어의 파일이어야 합니다.
java
keytool
해당 요구 사항을 충족하려면 경로에서 JDK 소프트웨어의 bin 디렉토리가 JRE 소프트웨어의 bin 디렉토리 앞에 오도록 하십시오.
다음 표에서는 이 릴리스에서 지원되는 데이터베이스 및 드라이버를 나열합니다. 지원되는 모든 Sun GlassFish Enterprise Server v3 구성은 이 표의 데이터베이스 및 드라이버 조합(예: Java DB와 드라이버)을 하나 이상 포함해야 합니다. 또한 Enterprise Server는 Java DataBase Connectivity(JDBCTM) 기술을 통해 어떤 추가 데이터베이스 관리 시스템(DBMS)과의 연결도 지원하도록 설계되었으며, 이를 위해 JDBC API를 지원하는 드라이버(JDBC 드라이버)를 사용합니다.
표 1–4 지원되는 JDBC 드라이버 및 데이터베이스
JDBC 드라이버 공급업체 |
JDBC 드라이버 유형 |
지원되는 데이터베이스 서버 |
---|---|---|
MySQL Connector/J Driver 5.1 |
Type 4 |
MySQL 5.1 |
Java DB 10.5.3.0 |
Type 4 |
Java DB 10.5.3.0 |
Oracle 11 |
Type 2 및 Type 4 |
Oracle 11 |
PostgreSQL 8.4 |
Type 4 |
PostgreSQL 8.4 |
DB2 9.7 |
Type 2 |
DB2 9.7 |
Sun, DataDirect 4.0 |
Type 4 |
Sybase ASE 15 |
Sun, DataDirect 4.0 |
Type 4 |
DB2 9.7 |
Sun, DataDirect 4.0 |
Type 4 |
Microsoft SQL Server 2008 |
Sun, DataDirect 4.0 |
Type 4 |
MySQL 5.1 |
다음 표에서는 지원되는 브라우저와 버전을 나열합니다.
표 1–5 지원되는 웹 브라우저
브라우저 |
버전 |
---|---|
Firefox |
2.0, 3.0 |
Internet Explorer |
7.0, 8.0 |
Safari |
3.2, 4.0 |
Sun GlassFish Enterprise Server v3은 mod_jk 1.2.x(최소 1.2.26)를 지원합니다.
이 절에서는 Sun GlassFish Enterprise Server v3의 알려진 문제와 제공된 해결 방법에 대해 설명합니다.
[JDK_Issue] setSoLinger 또는 setReuseAddress 호출로 인한 성능 저하(문제 7109)
[JDK_ISSUE] Richaccess: java.io.IOException: doSelect의 잘못된 인수(문제 8573)
도메인 /applications 디렉토리의 파일 권한 때문에 NullProcessException이 발생할 수 있음(문제 6545)
[Open Installer] 로그 파일을 재배치하기 위한 -l 옵션이 Windows에서 무시됨(문제 10693)
com.sun.xml.wss.NonceManager.getInstance에서 널 포인터 예외 발생(문제 11138)
[Open Installer]Windows Vista 및 Windows 2008에서 시작 메뉴가 표시되지 않고 비어 있음(문제 5087)
specj 응용 프로그램 배포 시 asadmin get --monitor=true "server.*"에서 I/O 오류 발생(문제 11163)
Java Web Start를 사용하여 실행한 응용 프로그램 클라이언트에서 Java EE 6 Managed Bean 지원을 사용할 수 없음(문제 11257)
Apple Java 구현이 있는 Mac OS X에서 appclient 스크립트 호출 시 경고 메시지가 표시됨(문제 8644)
응용 프로그램 클라이언트를 실행하면 클라이언트의 주 클래스에 대해 ClassNotFound 오류가 발생할 수 있음(문제 11181)
Linux 및 Mac OS의 Summary 화면에서 링크를 사용하여 설치 로그 파일을 열 수 없음(문제 6621)
Windows에서 동일한 설치 디렉토리에 재설치하는 경우 updatetool 명령이 작동하지 않음(문제 8233)
인라인 도움말 및 CLI man 페이지에서 X-Powered-By에 잘못된 서블릿 버전 2.4 나열(문제 11011)
[Embedded] uber-ja를 사용하는 경우 activation-1.1.jar을 포함하는 응용 프로그램 배포가 실패함(문제 11149)
create-service가 Solaris의 passwordfile에서 AS_ADMIN_USER 없이 서비스를 생성하지 못함(문제 11119)
[Monitoring] connector-connection-pools에 대한 추가 모니터링 보기를 사용할 수 없음(문제 11256)
[EclipseLink]포함 가능 항목의 ElementCollections에서의 문제(EclipseLink 문제)
대상 EJB가 동일한 호스트에 있는 경우 원격 EJB에 대한 EJB 상호 운용성에 문제가 있음(문제 11152)
Windows Vista 및 Windows 7에서 간헐적으로 설치 프로그램이 41%에서 멈춤(문제 11185)
deploy 명령 설명서 페이지의 --dbvendorname에서 지원되는 데이터베이스 목록에 mysql이 표시되지 않음(문제 11328)
setSoLinger 메소드 또는 setReuseAddess 메소드가 호출되는 경우 성능이 저하되고 다음과 같은 예외가 발생합니다.
[#|2009-01-26T00:33:56.325-0800|WARNING|sun-appserver9.1| javax.enterprise.system.container.web|_ThreadID=17; _ThreadName=SelectorReaderThread-8084; _RequestID=11ae0030-c392-4217-8408-cfa7efe0a879;|setSoLinger exception java.net.SocketException: Invalid argument |
이 문제는 JDK 소프트웨어의 문제로 인해 발생합니다. JDK 버전 7에서는 해결되었습니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
Enterprise Server를 재시작하면 널 포인터 예외가 발생하는 경우가 있습니다.
SEVERE: doSelect exception java.lang.NullPointerException |
이 문제는 JDK 소프트웨어의 문제로 인해 발생합니다. JDK 버전 7에서는 해결되었습니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
HTTP 수명 테스트 중 실행 42시간 시점에 다음과 같은 예외가 발생합니다.
[#|2009-04-05T17:41:26.537-0700|SEVERE|glassfish|javax.enterprise.system.core| _ThreadID=15;_ThreadName=Thread-1;|doSelect exception java.io.IOException: Invalid argument |
실행 중에 인스턴스와 응용 프로그램에는 계속 액세스할 수 있습니다.
이 문제는 JDK 소프트웨어의 문제로 인해 발생합니다. JDK 버전 7에서는 해결되었습니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
시작 시 Enterprise Server에서 널 포인터 예외가 발생합니다.
java.lang.NullPointerException at sun.nio.ch.Util.atBugLevel(Util.java:326) at sun.nio.ch.SelectorImpl.<init>(SelectorImpl.java:40) at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:47) |
이는 Grizzly와 관련되며 JDK 6 문제입니다. 이 문제는 JDK 7에서는 해결되었습니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음 Grizzly에서 이 문제를 해결하고자 노력하고 있으나 여전히 문제가 발생할 수 있습니다.
다음 예외가 표시됩니다.
[#|2009-06-20T06:05:57.942-0700|SEVERE|glassfish| com.sun.grizzly.config.GrizzlyServiceListener| _ThreadID=21;_ThreadName=Thread-2;|doSelect IOException java.io.IOException: Invalid argument |
이는 JDK 문제로 JDK 1.6.0_18에서 수정될 예정입니다.
자세한 내용은 문제 보고서를 참조하십시오.
최대 파일 설명자 수를 10000 이상으로 높이십시오(Solaris의 기본값은 64000임). JDK 1.6.0_18이 사용 가능하게 되면 설치하십시오.
도메인의 /applications 디렉토리가 액세스를 제한할 경우 또는 제한된 디렉토리로부터의 디렉토리 배포를 사용하는 경우 서버는 확장된 디렉토리에서 파일을 읽을 수 없습니다. 배포 중에 NullProcessException 오류가 발생합니다.
자세한 내용은 문제 보고서를 참조하십시오.
해당 디렉토리에 대한 파일 액세스 설정을 변경하여 디렉토리 내용을 읽을 수 있는 서버 권한을 부여합니다.
time-stamp-install.log 파일을 읽을 수 없습니다. 이 파일에 기록된 모든 행이 하나의 긴 문자열로 결합되어 있습니다.
자세한 내용은 문제 보고서를 참조하십시오.
%TEMP% 디렉토리에 만들어진 설치 로그 파일을 다른 편집기에서 수동으로 엽니다.
새로 추가된 가상 서버에 대한 통계 모니터링은 서버를 다시 시작한 후에만 가능합니다.
자세한 내용은 문제 6238 및 문제 6422에 대한 보고서를 참조하십시오.
가상 서버를 추가한 후 서버를 다시 시작해야 가상 서버에 대한 모니터링 데이터를 볼 수 있습니다.
-a 및-s 옵션과 함께 사용하는 경우 로그 파일을 재배치하기 위한 -l 옵션이 무시되며 기본 위치에 로그 파일이 생성됩니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
UAC(사용자 계정 제어)를 사용하는 Windows Vista에서는 일부 기능이 제대로 작동하지 않습니다. 하나의 예로 관리 콘솔을 실행할 수 없습니다.
자세한 내용은 문제 보고서를 참조하십시오.
UAC를 비활성화하고 재부팅합니다.
GlassFish 메시지 보안 공급자를 사용하는 상태에서 JAX-RPC 웹 서비스를 테스트하면 서버 로그에 다음과 같은 예외가 발생합니다.
[#|2009-11-23T11:16:58.375+0005|SEVERE|glassfishv3.0| javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=25;_ ThreadName=http-thread-pool-8080-(2);|caught throwable java.lang.RuntimeException: com.sun.enterprise.security.jauth.AuthException |
nonce 속성의 기본값이 작동하지 않습니다.
자세한 내용은 문제 보고서를 참조하십시오.
JAX-RPC 웹 서비스에서 메시지 보안을 사용하려면 구성에서 nonce 속성을 비활성화합니다. 해결 방법에 대한 전체 단계는 문제 보고서를 참조하십시오.
설치를 처음 완료한 후 Enterprise Server의 시작 메뉴 그룹이 표시되지 않습니다. 로그아웃한 후 다시 로그인하면 메뉴 그룹이 표시되지만 비어 있습니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
asadmin get -m "server.*" 명령은 해당 서버와 관련된 모든 모니터링 데이터를 반환합니다. 여러 응용 프로그램이 배포된 경우 데이터 양이 상당히 커서 반환하는 데 시간이 오래 걸릴 수 있습니다. 클라이언트에서 다음과 같은 클라이언트측 오류와 함께 시간 제한을 적용할 수 있습니다.
./asadmin get --monitor=true "server.*" I/O Error: Read timed out Command get failed. |
자세한 내용은 문제 보고서를 참조하십시오.
클라이언트에 반환되는 데이터 양을 최소화합니다.
최상위 수준 요소를 반환하는 asadmin list -m "server.*" 명령을 실행합니다.
세부 정보가 필요한 최상위 수준 요소를 선택하고 해당 요소를 필터로 사용합니다. 예를 들면 다음과 같습니다.
> ./asadmin list -m "server.*" ... server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-cache server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods. create-int-int-[Lorg\.spec\.jappserver\.supplier\.helper\.ComponentOrder server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods. findByPrimaryKey-java\.lang\.Integer server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.generateXml server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.getEJBLocalHome ... >./asadmin get -m "server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.*" ... server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.remove. methodstatistic-name = MethodStatistic server.applications.SPECjAppServer.supplier\.jar.POEnt.bean-methods.remove. methodstatistic-starttime = 1259604209775 ... |
updatetool 명령으로 시작된 독립형 Update Tool은 애드온 구성 요소 설치 시 Solaris의 세그멘테이션 결함으로 실패합니다.
자세한 내용은 문제 보고서를 참조하십시오.
시스템이 Update Center Release Notes에 정의된 대로 독립형 Update Tool 패치 요구 사항을 준수하는지 확인합니다.
관리 콘솔에서의 Update Tool 기능은 다양한 Java 기반 Update Center API를 사용하며 이 문제의 영향을 받지 않습니다.
Ruby 응용 프로그램이 컨텍스트 루트 '/'에 배포된 다음 관리 콘솔을 액세스하는 경우 Ruby 응용 프로그램을 액세스하면 404 오류가 발생합니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
Java Web Start를 사용하여 응용 프로그램 클라이언트를 실행하는 경우 응용 프로그램 클라이언트의 모든 관리되는 Bean이 인식되지 않습니다.
자세한 내용은 문제 보고서를 참조하십시오.
appclient 스크립트를 사용하여 응용 프로그램 클라이언트를 실행합니다. 응용 프로그램 클라이언트의 관리되는 Bean은 정상적으로 지원됩니다.
Apple의 Java가 설치된 Mac OS X에서 appclient 스크립트를 호출하면 다음 스택 추적이 두 번 표시됩니다(여기에는 처음 몇 줄만 표시함).
Intentionally suppressing recursive invocation exception! java.lang.IllegalStateException: recursive invocation at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1394) at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1377) at sun.security.jca.ProviderConfig$1.run(ProviderConfig.java:64) ... |
자세한 내용은 문제 보고서를 참조하십시오.
아무 작업도 필요하지 않습니다.
경고 메시지가 표시되지만 클라이언트가 성공적으로 실행되고 정상적으로 실행됩니다. 이러한 오류는 Apple Java 구현의 문제로 인한 것입니다.
다음 사항이 모두 참일 경우 문제가 발생합니다.
응용 프로그램이 응용 프로그램 클라이언트를 포함하는 EAR입니다.
EAR이 디렉토리 배포입니다.
EAR이 디렉토리 배포이기 때문에 myAppClient_jar로 사전 확장되는 응용 프로그램 클라이언트 모듈 myAppClient.jar을 포함합니다. (예: myApp는 EAR의 이름입니다. 이 이름에는 어떤 이름이든 지정 가능합니다.)
서버에서 생성된 하나의 파일이 잘못된 서버 디렉토리에 배치되고 생성된 다른 파일을 덮어쓰기 때문에 다음과 같은 오류로 응용 프로그램 클라이언트 실행 시도가 실패합니다.
java.lang.ClassNotFoundException:(main-class-for-the-client) |
자세한 내용은 문제 보고서를 참조하십시오.
응용 프로그램 클라이언트의 이름을 myAppClient.jar이 아닌 다른 이름으로 변경합니다. 특히
클라이언트 선언이 <java>myClient.jar</java>이 되도록 myApp/META-INF/application.xml을 편집합니다. myAppClient.jar이 아닌 다른 이름을 사용할 수도 있습니다.
myApp/myAppClient_jar 디렉토리의 이름을 myApp/myClient_jar로 변경합니다. 클라이언트의 하위 디렉토리 이름은 application.xml 파일에 있는.jar이 _jar로 교체된 응용 프로그램 클라이언트 URI와 동일해야 합니다.
응용 프로그램을 배포합니다.
asadmin deploy --retrieve localdir myApp |
응용 프로그램 클라이언트를 실행합니다.
appclient -client localdir/myAppClient.jar |
관리 콘솔의 Logger Settings 페이지에서 General 탭의 서버 로그 값에 대한 변경 사항이 즉시 적용되지 않습니다.
자세한 내용은 문제 보고서를 참조하십시오.
서버를 다시 시작합니다. 이 페이지의 값에 대한 모든 변경 사항을 적용하려면 서버를 재시작해야 합니다.
그래픽 설치 프로그램에서 설치 프로세스의 마지막에 표시되는 Summary 페이지의 링크를 클릭하면 설치 로그 파일을 열 수 없습니다.
자세한 내용은 문제 보고서를 참조하십시오.
파일을 수동으로 액세스합니다. 설치 로그 및 요약 파일의 이름은 timestamp-install.log 및 timestamp-install-summary.html입니다. Linux와 Mac 시스템에서는 이러한 파일이 $TMP 디렉토리 아래에 생성됩니다.
기본값이 동일한 같은 설치 디렉토리에 Enterprise Server(Update Tool 포함)를 다시 설치하고 updatetoo 명령을 사용하여 Update Tool을 호출하는 경우 Update Tool이 설치되지 않았음을 나타내고 설치할 것인지 묻는 메시지가 표시됩니다. 이 문제는 Windows 시스템에서만 발생합니다.
자세한 내용은 문제 보고서를 참조하십시오.
제거한 후 다시 설치하기 전에 남아 있는 .org* 디렉토리를 수동으로 제거합니다.
이 문제는 Windows 및 Mac OS 시스템에서 간헐적으로 발생합니다. pkg(5)가 특정 시점에 특정 시스템에서 작동하지 않습니다.
자세한 내용은 Update Center 문제 보고서를 참조하십시오.
없음
인라인 도움말 및 CLI man 페이지는 X-Powered-By 필드에 서블릿 2.4를 나열합니다. 정확한 버전은 서블릿 3.0입니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
glassfish-embedded-all-3.0-b73.jar에 포함된 항목을 사용하는 경우 다음과 같은 오류로 배포가 실패합니다.
SEVERE: WEB9051: Error trying to scan the classes at /private/var/folders/CV/CVhj8DvqEwGK5bdJKK9TaE TI/-Tmp- /gfembed6991712842235699248tmp/applications/xwiki-enterprise-web-2.0/ WEB-INF/lib/activation-1.1.jar for annotations in which a ServletContainerInitializer has expressed interest java.util.zip.ZipException: error in opening zip file |
이 문제는 포함된 항목이 더하기 기호(+)가 있는 폴더를 사용하고 경로를 디코딩할 때 경로 내 더하기 기호가 공백 문자 " "로 변환되기 때문입니다.
자세한 내용은 문제 보고서를 참조하십시오.
임시 디렉토리를 배치할 수 있도록 시스템 속성이 추가되었습니다. 이 속성은 glassfish.embedded.tmpdir이며 임시 도메인 디렉토리가 사용자 디렉토리에 배치되지 않게 설정할 수 있습니다.
create-service가 Solaris의 passwordfile에서 AS_ADMIN_USER 없이 서비스를 생성하지 못합니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
Enterprise Server는 트리 구조를 사용하여 모니터링 가능한 개체를 추적합니다. 이 트리 내에서 다음 보기를 사용하여 연결 풀 통계를 가져올 수 없습니다.
server.connector-service.resource-adapter-name .connection-pool-name .* 또는 server.jms-service.connection-factories. connection-factory-name.*( jms-ra 관련 풀용).
자세한 내용은 문제 보고서를 참조하십시오.
server.resources.* 보기를 사용하여 통계를 가져옵니다.
모니터링에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 8 장, Administering the Monitoring Service를 참조하십시오.
구성을 사용하는 경우 포함 가능 항목의 요소 집합에 대한 업데이트가 널 포인터 예외를 발생시킬 가능성이 있습니다.
자세한 내용은 EclipseLink 문제 보고서를 참조하십시오.
두 가지 해결 방법을 사용할 수 있습니다.
포함 가능 항목에서 @ChangeTracking(DEFFERED) 주석을 추가하고 eclipselink.weaving.internal 속성을 false로 설정하거나
지속성이 있는 XML에서 다음 속성을 false로 설정합니다: eclipselink.weaving.changetracking 및 eclipselink.weaving.internal.
도메인을 시작하고 localhost:4848에 액세스한 후 다음 메시지가 서버 로그에 표시됩니다.
[#|2009-11-27T16:21:57.091+1100|INFO|glassfishv3.0| javax.enterprise.system.container.web.com.sun.enterprise.web| _ThreadID=20;_ThreadName=Thread-1;|Created virtual server server|#] |
[#|2009-11-27T16:21:57.091+1100|INFO|glassfishv3.0| javax.enterprise.system.container.web.com.sun.enterprise.web| _ThreadID=20;_ThreadName=Thread-20;|Created virtual server server|#] |
이러한 메시지는 가상 서버 server가 두 번 표시된 것과 비슷해 보이지만 그렇지 않습니다. 가상 서버는 한 번만 시작되었으나 메시지가 여러 번 기록된 것입니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
서버의 제한된 메시지 때문에 JPA 디버깅이 어렵습니다.
자세한 내용은 문제 보고서를 참조하십시오.
org.eclipse.persistence.session.level=INFO 속성을 logging.properties 파일에 추가합니다. 그런 다음 관리 콘솔을 사용하여 EclipseLink 로거를 제어할 수 있습니다.
대상 EJB가 동일한 호스트에 있는 경우 원격 EJB에 대한 EJB 상호 운용성에 문제가 발생합니다(다른 Enterprise Server 도메인 또는 다른 Enterprise Server v3 인스턴스).
자세한 내용은 문제 보고서를 참조하십시오.
jvm-options에서 다음 속성을 설정합니다.
-Dorg.glassfish.orb.iiop.orbserverid=:
Windows Vista 및 Windows 7에서 설치 중에 Enterprise Server 그래픽 설치 프로그램이 41%에서 멈춥니다. 모든 설치 시도에서 이러한 문제가 발생하는 것은 아닙니다.
자세한 내용은 문제 보고서를 참조하십시오.
이 문제는 기본적으로 사용되는 Windows Vista 및 Windows 7의 자동 조정 기능과 관련되어 있습니다.
Enterprise Server를 처음 설치하는 경우 또는 패키지를 추가하거나 업데이트를 적용하는 경우 멈춤이 발생하면 자동 조정 기능을 제한하거나 비활성화합니다.
기본적으로 Enterprise Server에서 JMS 서비스의 기본 호스트 이름은 localhost입니다. 그러나 다른 시스템에서 JMS 서비스에 액세스하려면 호스트 이름을 변경해야 합니다. 이 이름은 실제 호스트 이름이나 0.0.0.0으로 변경할 수 있습니다.
자세한 내용은 문제 보고서를 참조하십시오.
변경하려면 다음 중 하나를 수행하십시오.
관리 콘솔을 사용합니다. Configuration, Java Message Service 및 JMS Hosts 노드를 확장하고 default_JMS_host를 선택하고 Host 필드를 편집합니다. 또는
다음과 같이 asadmin 하위 명령을 사용합니다.
asadmin set server-config.jms-service.jms-host.default_JMS_host.host="0.0.0.0" 또는
asadmin set server-config.jms-service.jms-host.default_JMS_host.host="hostname"
그래픽 설치 프로그램을 사용하여 Enterprise Server를 설치하는 경우 설치가 성공적으로 완료되지만 최상위 수준 GlassFish v3 항목만 Windows 시스템 메뉴에 추가되고 메뉴는 비어 있습니다. 이 문제는 영어 및 지역화된 설치 프로그램 모두에서 발생합니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
deploy 명령 설명서 페이지의 --dbvendorname에서 지원되는 데이터베이스 목록에 mysql이 표시되지 않음(문제 11328) 이것은 잘못된 것입니다. MySQL은 지원되는 데이터베이스이므로 목록에 나타나야 합니다.
자세한 내용은 문제 보고서를 참조하십시오.
없음
ACC는 현재 스레드의 컨텍스트 클래스 로더가 ACCClassLoader가 될 것으로 기대합니다. 이는 지나치게 제한적인 것입니다. appclient 스크립트에 대해 이 조건이 부합하고 Java Web Start가 실행되는 경우에라도 내장된 케이스에는 부합하지 않을 수 있습니다. ACC 내 다른 함수에서는 클래스 로더가 URLClassLoader(또는 URLClassLoader의 하위 클래스 인스턴스)가 되어야 하지만 로더가 ACCClassLoader일 필요는 없습니다.
자세한 내용은 문제 보고서를 참조하십시오.
두 가지 해결 방법을 사용할 수 있습니다.
-Djava.system.class.loader=org.glassfish.appclient.client.acc.ACCClassLoader 를 설정하십시오. 또는
Java 프로그램에서, 내장된 ACC 클래스 및 인터페이스를 사용에 앞서 Thread.currentThread().setContextClassLoader 를 사용하여 ACCClassLoader를 인스턴스화하고 이를 현재 스레드의 컨텍스트 클래스 로더가 되게 설정하십시오.
MySQL에서 사용자로서 EJB 타이머를 만들고 저장할 수 있지만, MySQL용으로 EJB 타이머 서비스를 구성하려고 하면 다음과 같은 예외가 나타납니다(SQLException 실행 명령문):
"CREATE TABLE EJB__TIMER__TBL (TIMERID VARCHAR(255) NOT NULL, BLOB BLOB(64000), INITIALEXPIRATIONRAW BIGINT, SCHEDULE VARCHAR(255), INTERVALDURATION BIGINT, OWNERID VARCHAR(255), STATE INTEGER, LASTEXPIRATIONRAW BIGINT, PKHASHCODE INTEGER, CREATIONTIMERAW BIGINT, CONTAINERID BIGINT, PRIMARY KEY (TIMERID))": com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BLOB BLOB(64000), INITIALEXPIRATIONRAW BIGINT, SCHEDULE VARCHAR(255), INTERVALDU' at line 1|#] |
자세한 내용은 문제 보고서를 참조하십시오.
타이머 풀에 지정된 datasource-classname이 XA 데이터 소스를 나타내도록 해야 합니다.
MySQL별 단계:
glassfishv3/glassfish/lib/install/applications/ejb-timer-service-app.war 패키지를 풉니다.
다음 항목을 WEB-INF/classes/__ejb_timer_mappings.xml 의 <persistence-unit-metadata> 뒤에 추가합니다.
<persistence-unit-defaults> <delimited-identifiers/> </persistence-unit-defaults>
WEB-INF/classes/__ejb_timer_mappings.xml 파일을 다시 묶습니다.
(이 단계는 현재 설치 프로그램에서 이미 EJB 타이머 서비스를 사용한 경우에만 필요합니다.) 다음 create 구문을 통해 데이터베이스에 EJB__TIMER__TBL을 직접 생성합니다.
CREATE TABLE `EJB__TIMER__TBL` (`TIMERID` VARCHAR(255) NOT NULL, `BLOB` BLOB(64000), `INITIALEXPIRATIONRAW` BIGINT, `SCHEDULE` VARCHAR(255), `INTERVALDURATION` BIGINT, `OWNERID` VARCHAR(255), `STATE` INTEGER, `LASTEXPIRATIONRAW` BIGINT, `PKHASHCODE` INTEGER, `CREATIONTIMERAW` BIGINT, `CONTAINERID` BIGINT, PRIMARY KEY (`TIMERID`))
--secure 옵션을 사용하지 않으면 보안 서버에 대해 deploy 하위 명령이 실패합니다.
자세한 내용은 문제 보고서를 참조하십시오.
보안 서버에 대해 deploy 하위 명령을 실행할 때는 --secure 옵션을 사용하십시오.
Enterprise Server 트러스트 저장소에 있는 기관 인증서 중 하나가 2010년 1월 7일 만료됩니다. 이 인증서는 cacerts.jks입니다. 시작 시 인증서가 만료되었음을 나타내는 오류 메시지가 생성됩니다.
Version: V1 Subject: OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US Signature Algorithm: MD2withRSA, OID = 1.2.840.113549.1.1.2 Key: SunPKCS11-Solaris RSA public key, 1000 bits (id 17891456, session object) modulus: public exponent: Validity: [From: Tue Nov 08 19:00:00 GMT-05:00 1994, To: Thu Jan 07 18:59:59 GMT-05:00 2010] Issuer: OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US SerialNumber: [ 02ad667e 4e45fe5e 576f3c98 195eddc0] |
자세한 내용은 문제 보고서를 참조하십시오.
만료된 기관 인증서는 Java SE 6의 업데이트 18에서 제거되었습니다. 또한 향후 업데이트에서는 Enterprise Server 트러스트 저장소에서도 제거될 것입니다.
오류 메시지를 무시하고 업데이트를 사용하거나 오류 메시지를 제거할 수 있습니다. 오류 메시지를 더 이상 받지 않으려면 키 도구를 사용하여 Enterprise Server 트러스트 저장소에서 인증서를 제거하십시오.
=> cd domains/domainX/config => cp cacerts.jks cacerts.jks.save => keytool -delete -keystore cacerts.jks -alias verisignserverca Enter keystore password: |
만료된 인증서가 향후 생성되는 도메인에 다시 나타나지 않도록 하려면 템플릿 트러스트 저장소에서도 인증서를 제거해야 합니다.
=> cd glassfish/lib/templates => cp cacerts.jks cacerts.jks.save => keytool -delete -keystore cacerts.jks -alias verisignserverca Enter keystore password: |
키 저장소 암호에 대한 자세한 내용은 Sun GlassFish Enterprise Server v3 Administration Guide의 Authentication에서 마스터 암호 및 키 저장소 관련 정보를 참조하십시오.
이 절에서는 다음 Sun GlassFish Enterprise Server v3 제한 사항에 대해 설명합니다.
asadmin 명령의 도움말에서는 Sun GlassFish Enterprise Server v3에서 지원하지 않는 일부 옵션에 대해 설명합니다. 예를 들면 다음과 같습니다.
클러스터 및 다중 서버 인스턴스와 관련된 옵션 - 예: --target 옵션
프로필과 관련된 옵션 - 예: --profile 옵션
지원되지 않는 옵션을 지정할 경우 구문 오류가 표시되지 않습니다. 그 대신 명령은 성공적으로 실행되며, 지원되지 않는 옵션은 자동으로 무시됩니다.
기본적으로 Enterprise Server에서는 최상의 시작 및 배포 성능을 얻기 위해 클라이언트 VM을 사용합니다. Windows AMD64를 사용하는 경우 domain.xml 파일을 편집하여 <jvm-options>–client<jvm-options> 줄을 제거합니다. 이 경우 JVM ergonomics는 지정된 플랫폼에 알맞은 VM 종류를 선택합니다.
플랫폼 지원에 대한 자세한 내용은 5.0 Java Virtual Machine의 Ergonomics를 참조하십시오.
다음 표에서는 Enterprise Server 설명서 세트에 포함된 설명서의 제목과 간단한 설명을 제공합니다.
표 1–6 Enterprise Server 설명서 세트에 포함된 설명서
설명서 제목 |
설명 |
---|---|
소프트웨어 및 설명서 관련 최신 정보를 제공합니다. 지원되는 하드웨어, 운영 체제, Java Development Kit(JDK) 및 데이터베이스 드라이버를 표 형식으로 종합적으로 요약하였습니다. |
|
Enterprise Server 제품을 시작하는 방법에 대해 설명합니다. |
|
소프트웨어 및 해당 구성 요소를 설치하는 방법에 대해 설명합니다.. |
|
최신 Enterprise Server 버전으로 업그레이드하는 방법에 대해 설명합니다. 또한, 이 설명서에서는 제품 사양과의 비호환성을 초래할 수 있는 인접한 제품 릴리스와 구성 옵션 간의 차이에 대해서도 설명합니다. |
|
명령줄에서 asadmin(1M) 유틸리티를 사용하여 Enterprise Server 하위 시스템과 구성 요소를 구성, 모니터하고 관리하는 방법에 대해 설명합니다. 관리 콘솔에서 이러한 작업을 수행하는 것에 대한 자세한 내용은 관리 콘솔 온라인 도움말을 참조하십시오. |
|
응용 프로그램을 어셈블하여 Enterprise Server에 배포하는 방법에 대해 설명하며 배포 설명자에 대한 정보를 제공합니다. |
|
단순한 엔터프라이즈 응용 프로그램 개발을 위한 전체 프로세스를 설명하는 간단한 초보 Java EE 프로그래머용 자습서를 제공합니다. 샘플 응용 프로그램은 Enterprise JavaBeansTM 사양, JAX-RS 웹 서비스 및 웹 프런트엔드용 JavaServerTM Faces 구성 요소 기반의 요소로 이루어진 웹 응용 프로그램입니다. |
|
Enterprise Server에서 실행될 Java Platform, Enterprise Edition(Java EE 플랫폼)을 만들고 구현하는 방법에 대해 설명합니다. 이 응용 프로그램을 Java EE 구성 요소 및 API를 위한 개방형 Java 표준 모델을 따릅니다. 이 설명서는 개발자 도구, 보안 및 디버깅 정보를 제공합니다. |
|
게시된 Enterprise Server 인터페이스를 사용하여 Enterprise Server용 애드온 구성 요소를 개발하는 방법에 대해 설명합니다. 이 설명서는 애드온 구성 요소를 Enterprise Server에 적합하게 하는 작업만 수행하는 방법에 대해 설명합니다. |
|
내장된 Enterprise Server에서 응용 프로그램을 실행하고 Enterprise Server가 내장되는 응용 프로그램을 개발하는 방법에 대해 설명합니다. |
|
Ruby on Rails, Groovy on Grails 등의 언어로 Enterprise Server에 배포할 스크립팅 응용 프로그램을 개발하는 방법에 대해 설명합니다. |
|
Enterprise Server 사용 시 발생할 수 있는 일반적인 문제와 문제 해결 방법에 대해 설명합니다. |
|
Enterprise Server 사용 시 발생할 수 있는 오류 메시지에 대해 설명합니다. |
|
Enterprise Server 관리 명령, 유틸리티 명령 및 관련 개념에 관한 참조 정보를 도움말 페이지 형식으로 제공합니다. |
|
Enterprise Server 구성 파일, domain.xml의 형식에 대해 설명합니다. |
|
Java EE 6 플랫폼 기술과 API를 사용하여 Java EE 응용 프로그램을 개발하는 방법에 대해 설명합니다. |
|
Sun GlassFish Message Queue의 새로운 기능, 호환성 문제 및 기존 버그에 대해 설명합니다. |
|
Sun GlassFish Message Queue 메시징 시스템을 설정하고 관리하는 방법에 대해 설명합니다. |
|
JMX(Java Management Extensions)에 적합하게 Message Queue 자원을 프로그래밍 방식으로 구성하고 모니터링하기 위한 Sun GlassFish Message Queue의 응용 프로그램 프로그래밍 인터페이스를 설명합니다. |
|
시스템 가상화 제품 및 기능과 연결하여 사용할 때 Sun Java System 제품에 대한 Sun 지원을 요약합니다. |
다음 Sun GlassFish Enterprise Server v3 기능은 전체 플랫폼 프로필에서만 사용할 수 있습니다.
원격 EJB 구성 요소, 메시지 위주의 Bean, 웹 서비스 EJB 종단점 및 EJB Timer Service와 같이 전체 EJB 3.1 API를 구성하는 EJB 기능
웹 프로필에서는 EJB 3.1 Lite 사양이 지원됩니다. 이 사양은 웹 응용 프로그램 내에 Enterprise Bean을 허용하고 로컬의 Stateless Session Bean, Stateful Session Bean 및 Singleton Session Bean에 대한 지원을 포함합니다.
응용 프로그램 클라이언트 컨테이너
JMS 자원
웹 서비스
웹 프로필에서는 서블릿 또는 EJB 구성 요소가 웹 서비스 종단점이 될 수 없습니다. 웹 서비스와 연관된 sun-web.xml 및 sun-ejb-jar.xml 요소는 무시됩니다.
메시지 보안
JavaMail 자원
아웃바운드 통신 기능만 사용하는 커넥터 모듈과 인바운드 통신 기능과 관련되지 않은 작업 관리는 웹 프로필에서 지원되지 않습니다. 기타 커넥터 기능은 전체 플랫폼 프로필에서만 지원됩니다.
Sun GlassFish Enterprise Server v3는 다음 표에 나열된 Java EE 표준을 구현합니다. 또한 이 표는 표준 구현이 가능한 배포도 나타냅니다.
X는 배포에서 사용 가능한 구현을 나타냅니다.
-는 배포에서 사용할 수 없는 구현을 나타냅니다.
Java EE 표준 |
JSR(Java Specification Request) |
Sun GlassFish Enterprise Server v3 전체 플랫폼 프로필 |
Sun GlassFish Enterprise Server v3 웹 프로필 |
---|---|---|---|
X |
X |
||
X |
X |
||
X |
X |
||
Expression Language 2.2 |
X |
X |
|
Debugging Support for Other Languages 1.0 |
X |
X |
|
X |
X |
||
X |
X |
||
Common Annotations for the Java Platform 1.1 |
X |
X |
|
X |
X |
||
X |
X |
||
X |
X |
||
Managed Beans 1.0 |
X |
X |
|
Interceptors 1.1 |
X |
X |
|
Dependency Injection for Java 1.0 |
X |
X |
|
X |
X |
||
Contexts and Dependency Injection for Java EE 1.0 |
X |
X |
|
X |
X |
||
Bean Validation 1.0 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Implementing Enterprise Web Services 1.3 |
X |
- |
|
Web Services Metadata for the Java Platform 2.1 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
Java Authentication Service Provider Interface for Containers 1.1 |
X |
- |
|
X |
- |
||
X |
- |
||
X |
- |
||
JAXR(Java API for XML-Based Registries) 1.0 |
X |
- |
이러한 표준에 기반하여 Enterprise Server v3에서는 다음을 비롯한 다양한 확장을 제공합니다.
Ajax(Asynchronous JavaScript and XML): 웹 페이지의 일부를 위한 새 데이터를 검색하고 표시하며, 이 때 페이지 나머지 부분에는 영향을 주지 않습니다.
Metro: Java Architecture for XML Binding(JAXB) 및 Java APIs for XML Web Services 2.1(JAX-WS 2.1)을 구현하는 웹 서비스 스택입니다.
Grizzly: 수천 명의 사용자 규모로 확장하는 것을 가능하게 하는 New I/O(NIO) API를 사용하여 확장성과 견고함을 갖춘 서버를 구축할 수 있는 프레임워크입니다. HTTP, Bayeux Protocol, Java Servlet API 및 Comet을 지원하는 구성 요소를 포함시키는 기능이 제공됩니다.
Enterprise Server v3는 Java EE 6 SDK의 일부로 제공됩니다. 사용할 수 있는 Java EE 6 SDK 버전은 다음과 같습니다.
Java EE 6 SDK. 이 버전에는 Sun GlassFish Enterprise Server v3가 포함되어 있습니다. 이 버전은 엔터프라이즈 응용 프로그램 개발을 위해 Java EE API의 전체 세트가 필요한 개발자용으로 설계되었습니다.
Java EE 6 Web Profile SDK. 이 버전에는 Sun GlassFish Enterprise Server v3 웹 프로필이 포함되어 있습니다. 이 버전은 전체 플랫폼 프로필의 일부인 웹 기술을 포함하며 Java EE API의 전체 세트가 필요하지 않은 개발자용으로 설계되었습니다.
Java EE 6 SDK 배포는 Java EE 6 SDK 다운로드 페이지에서 제공됩니다.
Sun GlassFish Enterprise Server v3에서 문제가 발생한 경우 다음 방법 중 하나로 사용자 의견을 보내주십시오.
GlassFish 메일링 목록 – 다양한 관심 분야와 피드백에 대한 GlassFish 커뮤니티 메일링 목록
GlassFish 포럼 – GlassFish 프로젝트에 대해 논의하는 포럼
다음 위치에서 유용한 정보를 찾을 수 있습니다.
이 설명서에서는 추가 관련 정보를 제공하기 위해 타사 URL을 참조하기도 합니다.
Sun은 이 설명서에 언급된 타사 웹 사이트의 가용성에 대해 책임지지 않습니다. Sun은 이러한 사이트나 자원을 통해 사용할 수 있는 내용, 광고, 제품 또는 기타 자료에 대해서는 보증하지 않으며 책임지지 않습니다. Sun은 해당 사이트 또는 자원을 통해 사용 가능한 내용, 제품 또는 서비스의 사용과 관련해 발생하거나 발생했다고 간주되는 손해나 손실에 대해 책임이나 의무를 지지 않습니다.
이 매체를 발행한 이후 릴리스된 내게 필요한 옵션 기능을 사용하려면 Sun에 요청하여 구할 수 있는 섹션 508 제품 평가를 참조하여 관련 솔루션을 배포하는 데 가장 적합한 버전을 확인하십시오. 응용 프로그램의 업데이트 버전은 http://sun.com/software/javaenterprisesystem/get.html에서 찾을 수 있습니다.
내게 필요한 옵션 기능 구현을 위한 Sun의 방침에 대해 자세히 알아보려면 http://sun.com/access를 방문하십시오.