2009-09-04 3 views
3

Java 포털에서 다른 응용 프로그램에서 제공하는 데이터를 포함하는 포틀릿을 가질 수 있습니다. 우리는 기존 Java 포털을 Django 애플리케이션으로 대체하고자합니다. 이는 Java 포털의 포틀릿 표시 기능을 복제하는 것을 의미합니다. 문제의 두 가지 Sun 사양은 JSR168과 JSR286입니다.jsr168 및/또는 jsr286에서 작동하는 cpython 라이브러리가 있습니까?

나는 cPython 솔루션이 필요합니다. Jython이나 Java가 아닙니다. 그 도구들에 대한 어떤 것도, 우리는 단지 그것들을 사용하지 않습니다. 기록을 위해, 자이 썬 기반 Portletpy은 우리가하고자하는 것과 반대입니다.

또한이 질문은 JSR168/JSR286 사양의 작동 방식에 대한 오해에서 비롯된 것 같습니다. I JSR168/JSR286은 SOAP과 같은 다른 방법으로 수행되는 경향이있는 Java 세계에서 개별 응용 프로그램간에 콘텐츠를 통신하기위한 비밀 프로토콜입니다. 대신 이러한 프로토콜은 단순히보기에 콘텐츠 개체를 표시하는 방법에 대한 정의 일뿐입니다. 우리가해야할 일은 SOAP 호출을 처리하고 데이터를 표시하는 것 뿐이라면이 모든 질문은 의미가 없습니다. 우리가 을 생각의 아래

간단한 구조의 이미지는 우리가하고 싶은 :

alt text

+0

"포틀릿 정보를 제공 하시겠습니까?" 포틀릿 구성 파일을 의미합니까? 또는 레거시 Java 포틀릿이 레거시 애플리케이션에서 데이터를 읽고 제시한다는 의미입니까? 이 점을 분명히하십시오. –

+0

레거시 Java 응용 프로그램은 레거시 응용 프로그램에서 데이터를 읽어서 제공합니다. 이것이 내가 실제로 SOAP (또는 무엇이든) 웹 서비스를 제공하는 문제인 것으로 의심되는 이유입니다. – pydanny

답변

3

나는이 작업을 수행 할 수 있습니다 모르겠어요. JSR 168 :

JSR 168 Request/response Handling

만약 내가 제대로 이해하고

, 당신은 장고 응용 프로그램 다이어그램에서 기존의 "자바 포털/포틀릿 컨테이너"를 대신하고자합니다. 아쉽게도 포틀릿 컨테이너와 개별 포틀릿 간의 인터페이스는 웹 서비스가 아닌 메모리 내 API 호출을 사용합니다. Java 페이지를 호출하여 HTML 덩어리를 호출하면 Django가 제공하는 페이지에 통합 할 수있는 쉬운 URL과 같은 인터페이스가 없습니다.

JSR 286은 업데이트이며 포틀릿 간의 리소스 전달뿐만 아니라 포틀릿 간 통신 메커니즘을 개선하지만 실제로는 위의 모델을 근본적으로 변경하지 않습니다.

나는 그것을 할 수 없다는 것을 말하는 것이 아닙니다. 간단하고 쉬운 표준 방법이 아닙니다.

0

이 문제를 해결하는 한 가지 방법은 JSR 168/286을 웹 서비스로 변환하고 장고에서 소비하는 WSRP (원격 포틀릿 용 웹 서비스, Wikipedia 참조) 제작자를 사용하는 것입니다. 하지만 WSRP는 그다지 인기가 없었고 일부 Python 플랫폼 구현을 찾을 수 없었습니다 (일부 저작은있을 수 있지만). 게다가이 주제에도 관심이 있습니다.

관련 문제