Cloudant 드라이버의 고급 기능 구성
Liberty에서 Cloudant Java 클라이언트의 고급 기능을 사용할 수 있습니다.
시작하기 전에
Cloudant 구성 주제인 Liberty에서 Cloudant Java 클라이언트 라이브러리를 사용하여 CouchDB 연결 구성을 참고하고, server.xml의 필요한 자원이 구성되었는지 확인하십시오.
이 태스크 정보
Cloudant Java 클라이언트의 사용자로서, Java 2 보안이 사용 가능한 상태에서 서버를 실행하거나 자원 참조에 인증 별명을 적용하기 원할 수 있습니다. 또는 WebSphere 통합 기능 없이 Cloudant Java 클라이언트를 사용할 수 있습니다. 다음 단계는 서로 독립적으로 수행될 수 있습니다.
프로시저
- 사용자 서버가 Java 2 보안을 사용하면서 실행 중인 경우, cloudant
클라이언트 라이브러리에 권한이 부여되어야 합니다.
예를 들어, server.xml에서 다음을 지정할 수 있습니다.
<javaPermission codebase="${shared.resource.dir}cloudant/cloudant-client-2.2.0.jar" className="java.security.AllPermission"/>
- server.xml 파일에서 기본 컨테이너
인증 별명 요소를 작성하여 데이터베이스에 인증하는 데 사용될 사용자 이름과
비밀번호를 제공하십시오.
<cloudant ... containerAuthDataRef="cadr"/> <authData id="cadr" user="username" password="password"/>
팁: 기본 컨테이너 인증 별명을 지정하는 대신, cloudant 요소의 사용자 이름 및 비밀번호 속성을 사용할 수 있습니다. 자세한 정보는 Liberty: 비밀번호 암호화를 통한 보호의 한계를 참조하여 구성 파일에서 비밀번호를 보호하는 방법을 배우십시오. - 애플리케이션은 바인딩에 있는 자원 참조별로 컨테이너 관리 인증 별명을 지정할 수
있습니다. 인증 별명으로 지정되는 값은 서버 구성에 있는 authData
요소의 ID여야 합니다.
예를 들어, ibm-web-bnd.xml에서 다음을 지정할 수 있습니다.
<resource-ref name="java:module/env/cloudant/testDBRef" binding-name="cloudant/testDB"> <authentication-alias name="cadr"/> </resource-ref>
- 애플리케이션에서 관리되지 않은 Cloudant 자원을 사용하려는 경우
cloudant-1.0 기능을 사용으로 설정하거나 cloudant 또는
cloudantDatabase 요소를 server.xml에 추가할 필요가 없습니다.
관리되지 않은 Cloudant를 사용할 때, Cloudant 라이브러리가 애플리케이션에서 직접 패키징되거나 server.xml에서 라이브러리를 구성할 수 있습니다.
<library name="cloudantLib"> <fileset dir="${shared.resource.dir}cloudant" includes="cloudant-client-2.2.0.jar commons-codec-1.6.jar commons-io-2.4.jar gson-2.2.4.jar"/> </library><application ...> <classloader commonLibraryRef="cloudantLib"/> </application>
- JNDI 이름이 cloudant 구성 요소에 지정되는 경우, cloudant
구성 요소를 사용하여 구성한 ClientBuilder를 삽입 또는
검색할 수 있습니다.
<cloudant id="builder" jndiName="cloudant/builder" ... />
cloudant 구성 요소를 사용하여 구성된 ClientBuilder에 대한 삽입 또는 검색의 예입니다.
import com.cloudant.client.api.*; //... @Resource(lookup="cloudant/builder", name="cloudant/resRef") ClientBuilder builder; public void useInjectedBuilder() { CloudantClient client = builder.build(); Database db = client.database("somedb", true); // use the db ... // Shutdown the connection manager for this client when you are done with it // note that this renders the CloudantClient instance unusable after this point client.shutdown(); } public void useBuilderLookup() throws NamingException { ClientBuilder builder = (ClientBuilder) new InitialContext().lookup("java:comp/env/cloudant/resRef"); CloudantClient client = builder.build(); Database db = client.database("somedb",true); // use the db ... // Shutdown the connection manager for this client when you are done with it // note that this renders the CloudantClient instance unusable after this point client.shutdown(); }


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_couchdb_configdriver
파일 이름: twlp_couchdb_configdriver.html