2011-01-05 4 views
2

저는 Java Swing 응용 프로그램을 개발 한 팀에서 일하고 있습니다. 이제 다른 팀이이 응용 프로그램을 Lotus Notes에 통합하는 것을 돕기 위해 노력하고 있습니다. 불행하게도, 나는 Notes에 대해 많이 알지 못하고 있으며, 우리가하려는 일에 관련된 문서를 찾지 못하는 것 같습니다.Lotus Notes에서 응용 프로그램을 시작한 다음 나중에 Lotus 데이터베이스에 저장하는 방법?

Notes에서 전달 된 일부 데이터로 사용자가 응용 프로그램을 시작하고 사용자가 전달 된 데이터로 작업하게 한 다음 저장 준비가되면 수정 된 데이터가 다시 Notes에 저장됩니다. Notes 데이터베이스.

Notes 에이전트를 통해 얻은 첫 번째 부분 - 응용 프로그램을 시작하고 원래 데이터를 전달할 수 있습니다. 문제는 저축입니다. 에이전트는 응용 프로그램을 시작한 후 완료되고 "죽습니다"것처럼 보이므로 나중에 사용자가 저장할 준비가되었을 때 세션/데이터베이스에 대한 참조를 얻을 수있는 방법이 없습니다. Lotus 개발자 중 한 명은 응용 프로그램을 시작한 후 에이전트를 사용하기 위해 바쁜 대기 루프를 만들어 작동 시키지만 응용 프로그램을 실행하는 동안 다른 Lotus Notes 사용을 막는 부작용이 있습니다. 정말 받아 들일만한 해결책은 아닙니다.

우리가하려는 일이 가능하면 누구나 알 수 있습니까? 그것을하는 방법? 이것에 대한 예제/문서에 대한 링크?

답변

3

하나의 옵션은 Notes 에이전트가 Java 응용 프로그램을 시작하고 Java 응용 프로그램이 비동기 적으로 실행되도록 허용하는 것입니다. Notes Java API를 사용하여 Notes 데이터베이스에 직접 쓸 수 있습니다. Notes 클라이언트와 자격 증명을 공유하도록 클라이언트를 구성 할 수 있으므로 인증은 문제가되지 않습니다 (또는 Java 응용 프로그램을 Notes에 인증 할 수 있음). Java API는 매우 간단합니다. 기본적으로 LotusScript에서 사용할 수있는 백엔드 클래스를 모방합니다. 특정 문서에 다시 답변해야하는 경우 NotesUp에서 DocumentUniqueID (docid)를 Java 응용 프로그램으로 전달한 다음 Java 응용 프로그램에서 해당 문서를 사용하여 다시 쓸 수 있습니다. Database 클래스의 GetdocumentByUnid 메서드를 참조하십시오.

이 기사는 조금 오래된,하지만, 난 여전히 관련 생각 : http://www.ibm.com/developerworks/lotus/library/ls-Java_access_pt1/index.html

+0

이것은 우리가하려고하는 것처럼 들리지만, 우리는 에이전트에서 응용 프로그램으로 documentID를 전달합니다.하지만 에이전트가 끝날 때 세션이 끝나기 때문에 세션/데이터베이스로 돌아갈 수 없습니다. "Notes 클라이언트와 자격 증명을 공유하도록 클라이언트를 구성 할 수 있습니다"에 대한 자세한 정보를 제공 할 수 있습니까? 즉, 애플리케이션을 시작하는 에이전트가 애플리케이션을 전달하여 애플리케이션이 Lotus에 다시 연결할 수 있다는 것을 의미합니까? – Nate

+0

지금 답장을 보내 드려 죄송합니다. 그러나 Notes 클라이언트가 Notes 세션을 열려고하는 다른 응용 프로그램과 "공유"할 수 있습니다. 자세한 내용은 다음을 참조하십시오. http://publib.boulder.ibm.com/infocenter/domhelp/ v8r0/index.jsp? topic =/com.ibm.notes85.help.doc/sec_pass_otherapps_t.html –

3

당신은 다시 로터스 노츠에 데이터를 얻을 수있는 몇 가지 옵션이 있습니다. 최선의 방법은 Java API를 사용하여 Lotus Notes를 호출하고 데이터를 다시 추가하는 것입니다. domingo이라고하는 Java API에 대한 오픈 소스 인터페이스가 있습니다. 그렇지 않으면 Java API 사용 방법에 대한 domino 디자이너 도움말을 참조하십시오.

  • 사용 COM 또는 주 객체 및 방법 (see Domino Designer Help)
  • 를 호출하는 자바 API :. 여기

    다시 내가 5 분 생각할 수있는 노트에 데이터를 얻을 수있는 모든 방법의 목록입니다 메일 - 인 데이터베이스로. SQL 명령을 사용하여 노트로 다시 데이터를 삽입 할
  • 설정 노트 데이터베이스를 NotesSQL를 사용하여 이메일
  • 설정 지정된 디렉토리에서 읽을 수있는 예약 에이전트를 통해 데이터를 전달 (그것은 매 순간을 실행해야 또는 두 개), 그리고 파일에서 데이터를 가져옵니다.
  • Domino를 사용하는 경우 URL의 쿼리 문자열을 통해 데이터를 전달하고 에이전트에서 처리 할 수 ​​있습니다.
+0

현재 Notes Java API를 통해이 작업을 수행하려고합니다 ... 특정 클래스/자습서를 가리킬 수 있습니까? 봐야 할까? – Nate

1

Lotus Notes 데이터베이스를위한 완전한 Java API가 있습니다. 유일한주의 사항 : API는 C 코어를 감싸는 얇은 래퍼이며 은 Notes 개체에서 가비지 수집을위한 릴리스를 수행해야합니다. 따라서 예를 들어 NotesDocument를 호출해야합니다.recycle() 메서드를 사용하면 메모리를 빼낼 수 있습니다.

관련 문제