#java #weblogic-10.x
#java #weblogic-10.x
Вопрос:
Я изучаю «как создать приложение портала», просмотрел некоторые документы и учебные пособия. Я обнаружил, что нам нужен один сервер приложений, один контейнер портала и одна среда разработки.
пожалуйста, помогите мне понять это.
Я хочу создать портлет и развернуть его на сервере weblogic. итак, что мне требовалось.
означает: любой плагин в eclipse portlet container application server и т. Д…..
Спасибо
Ответ №1:
Я только что запустил и запустил контейнер портлетов pluto. Учебные пособия для pluto немного отрывочны и в большинстве своем содержат ошибки, которые могут сбить вас с курса. Таким образом, я сделал это настолько тщательно, насколько мог.
С тех пор мне удалось запустить pluto под WebLogic, хотя и не идеально (обсуждается позже). Итак, я думаю, что ваши цели:
- Установите контейнер портлетов: например, pluto
- Создайте портлет HelloWorld, разверните его и опубликуйте
- Возможно, развернуть портлет так, чтобы он запускался под WebLogic? Не уверен, что это то, что вы намереваетесь.
- Связь с портлетами
- Создайте более тяжелые портлеты, которые делают то, что вы хотите
- Обновите реализацию портала (например, JetSpeed)
Итак, вот что:
1. Установите контейнер портлетов: например, pluto
Я рекомендую вам начать с портлета pluto, поскольку это эталонная реализация и соответствует версии 2 спецификации (JSR-286). Загрузите двоичный дистрибутив с:
http://portals.apache.org/pluto/v20/getting-started.html
Это доступно на веб-сервере tomcat 6. Итак, чтобы запустить базовый портлет, вам просто нужно настроить и запустить tomcat. Веб-приложение pluto можно найти в каталоге webapps.
Чтобы узнать больше о tomcat, смотрите Здесь:
http://www.puschitz.com/InstallingTomcat.html#InstallingTomcatSoftware
Обратите внимание, что это немного сложно (по уважительной причине), поскольку рекомендуется создавать отдельные экземпляры tomcat. Этот урок действительно занимает всего час, поэтому я бы рекомендовал его перед началом работы с портлетами, чтобы у вас была хорошая основа.
Проще говоря, чтобы запустить pluto (ну, tomcat), вам просто нужно установить ваш $ {CATALINA_HOME} в качестве директории установки tomcat (pluto-2.0.2) и выполнить {pluto_install_dir}/bin/startup.sh . Вы можете получить доступ к порталу pluto из браузера с помощью:
http://localhost:8080/pluto/portal
2. Создайте портлет HelloWorld, разверните его и опубликуйте
К счастью, учебник по pluto почти достаточно хорош, чтобы начать работу. Невероятно, но во всех руководствах, которые я нашел, были недостатки или ошибки. С небольшой помощью вы должны это сделать. Он находится в том же месте:
http://portals.apache.org/pluto/v20/deploying.html
Структура каталогов, показанная в разделе «Сборка портлета», немного неверна. Папка webapp должна быть на том же уровне, что и папка java, в разделе main.
Вот пример портлета HelloWorld, который представляет использование прямого вывода в ответе (например, сервлета):
package com.mycompany.portlet;
//imports omitted...
public class HelloWorldPortlet extends GenericPortlet{
protected void doView(RenderRequest request,RenderResponse response)
throws PortletException, IOException {
response.setContentType("text/html");
response.getWriter().println("Hello World");
}
}
Вот пример WEB-INF/portlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<portlet-app
xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
<portlet>
<description>HelloWorld Description</description>
<portlet-name>HelloWorldPortlet</portlet-name>
<display-name>Hello World Display Name</display-name>
<portlet-class>com.mycompany.portlet.HelloWorldPortlet</portlet-class>
<expiration-cache>-1</expiration-cache>
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>VIEW</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
<portlet-info>
<title>Hello World</title>
<short-title>Hello World</short-title>
<keywords>Hello,pluto</keywords>
</portlet-info>
</portlet>
</portlet-app>
Вот пример WEB-INF/web.xml:
<web-app id="WebApp_ID">
<display-name>Hello World Portlet</display-name>
<taglib>
<taglib-uri>http://java.sun.com/portlet</taglib-uri>
<taglib-location>tld/portlet.tld</taglib-location>
</taglib>
</web-app>
Поместите portlet.tld (версия prtlet 2.0) в свой каталог tld. Обратите внимание, что мы не используем JSP, поэтому это будет пусто. Хороший (но неработающий) учебник на основе JSP смотрите Здесь:
http://www.ibm.com/developerworks/java/library/j-pluto/
Сборка с использованием сценария сборки mvn, поставляемого в:
http://portals.apache.org/pluto/v20/deploying.html
Если вы не добавите раздел автоматического развертывания сценария сборки, переместите войну сборки в свои веб-приложения pluto (tomcat).
В вашем браузере вы должны опубликовать свое новое веб-приложение HelloWorld со страницы администратора на портале pluto (добавить страницу -> добавить портлет). Должна быть добавлена новая вкладка, содержащая ваш портлет.
3. Разверните портлет в WebLogic
-
Добавьте библиотеки pluto в свою библиотеку WebLogic. Я помещаю их в каталог библиотеки вашего домена (который содержит readme, указывающий, что это для добавления jar для динамической загрузки в 10.2.3). Это ${MYDOMAIN}/lib. Банки, которые нужно найти, следующие:
-
Добавьте веб-приложение pluto и любые ссылки (опубликованные) веб-приложения в свой каталог загрузки WLS. Это означает включение testsuite, который поставляется с pluto, и вашего нового веб-приложения helloworld.
-
Настройте WLS для доступа к вашим портлетам:
- Веб-приложения pluto настроены для безопасности пользователей pluto и tomcat. Итак, вам нужно добавить нового пользователя «pluto» в свою область безопасности WLS [Области безопасности -> myRealm]
- Настройте безопасность веб-приложения, чтобы сопоставить роль безопасности пользователю WLS. Это означает создание ${MYUPLOAD}/pluto/WEB-INF/weblogic.xml . Здесь добавьте запись «security-role-assignment» для основного плутона (вашего нового пользователя WebLogic).
- Обратите внимание, что testsuite/WEB-INF/web.xml авторизован только для пользователя tomcat. Измените это на pluto.
- Добавьте portlet_2_0.tld в ${UPLOAD}/testsuite/WEB-INF/tld (сделайте каталог tld). Это доступно по адресу: http://svn.apache.org/repos/asf/portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/tld/portlet_2_0.tld
- Некоторые из тестовых наборов по-прежнему будут завершаться с ошибкой в WLS. Между apache и сообществом есть нерешенные проблемы. Они рассматривают это как проблему WLS (на apache pluto jira в https://issues.apache.org/jira/browse/PLUTO-571 ).
- Существует проблема, из-за которой портлет фактически представлен за пределами фрейма портлета (div) при использовании рендеринга JSP. Еще не дошел до сути.
4. Связь с портлетами
Есть два взаимодействующих портлета. Обратитесь к:
http://publib.boulder.ibm.com/infocenter/wpexpdoc/v6r1/index.jsp?topic=/com.ibm.wp.exp.doc_v6101/dev/pltcom_pubrndrprm.html
5. Создайте более тяжелые портлеты
Обратитесь к более сложному руководству по веб-приложениям с использованием JSP по адресу:
http://www.ibm.com/developerworks/java/library/j-pluto/
//Warning: portlet 1.0 (JSR-168) and contains errors
Затем попробуйте свои собственные…
6. Обновление реализации портала
Попробуйте, например, JetSpeed. Обратитесь к:
http://portals.apache.org/jetspeed-2/
Комментарии:
1. Спасибо за столь пояснительный ответ, он действительно очень помогает, если мы используем weblogic portal server 10.2, это означает, что у него будет портальный контейнер и сервер приложений, если мы не хотим использовать портлет-контейнер weblogic, тогда мы можем использовать контейнер pluto и создать приложение и развернуть его на weblogic server, я ПРАВ. еще раз спасибо
2. Я только что установил weblogic portal server 10.3, я нашел weblogic server, portal server и eclipse, этот сервер портала такой же, как pluto.? спасибо
3. Привет, хорошо. Я просто хотел дать вам подсказку. WebLogic Portal server — это не то же самое, что pluto, это реализация Oracle спецификации портлета (10.3.2 соответствует стандарту JSR-286 в соответствии с download.oracle.com/docs/cd/E15919_01/wlp.1032/e14244 /… ). Я указал вам на pluto, поскольку это справочный портал для JSR-286. Однако с сервером портлетов WL все должно быть в порядке. Я не использовал его, поэтому не могу комментировать дальше, но беглое чтение в Интернете заставляет меня задуматься, насколько переносимы портлеты портала WL. Я бы провел расследование перед фиксацией (или просто зафиксировал WLS и сервер портала).