• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • ܛyԇg
    • ܛyԇ
    • ܛyԇҕl
    • _Դܛyԇg
    • ܛyԇՓ
    • ܛyԇɳ
    • ܛyԇYd
    • ܛyԇs־
    • ܛyԇ˲Ƹ
      r]й

    :ܛyԇW >> ܛyԇg >> g >> WebSphere >> 鿴YӍ

    ̖: С | ]o һƪ | һƪ

    UML WebSphere Portal Server Portlet  1

    l: 2007-5-25 11:57 | : | Դ: IBM | 鿴: 57 | MܛyԇՓӑՓ

    IyܛyԇW ߼ IT — Portal SWAT Team
    eWorkplaces/Knowledge & Content Management
    IBM Global Services
    2002 8

    B

    ST Web ϵһЩM^mx IBM® WebSphere® Portal Ҫƽ_һ^҂Ҫ_lһʹ҂܉ЧʵOӋ_lTóĿYa͹aƷOӋ_lͬӶڞQPژóOӋ}ŬԱ̶ȵ WebSphere Portal ṩĿ

    ҽ҂ҪһϵģͻģʽÁ portlet ԼڑóеʹUһNʹýyһģZԣUnified Modeling LanguageUMLOӋTc portlet ķʹûTOӋ UMLҞ麆ε Portlet-MVC OӋ@NOӋԘԼ portlet óṩOӋ@ϣɞһM portlet OӋģ͵c@Щģ҂_ʼһMõģʽ

    IJPξ portlet mȻṩһЩaӱU UML ģcOӋaspֻPOӋIJκνѵđóҪe`zͮ̎@ṩҪö

    ʲôҪTóģ

    ʲôҪTóģúͨ҂TһMС֔ĹܻƬҲҪô韩؞ģdžINV҂ portlet ֻҪMСrͿԘε portlet@ӵԒ҂͎׺ҪҪOӋAϻMrgDzǵĴ_TֻҪһɂṩһЩ֔ĹܻfϵyL portletôܾ͛]ҪͶĕrgOӋ쵽һܵOӋrgܾҲԿ]һNʹøMԭͣprototypeO˾

    ҵmȻ WebSphere Portal ܵĴ_pOӋ_lrgo҂ṩһ׿ɔUչĹһеĵķҪTóҪIJHHһɂε portletҪһ“” portletǎׁṩĹ߀ҪóӳsingletonӛһЩգṩNcϵyĵ׌L҂ҲҪӛڴ„ϵy EJB@NϵyҪһؽ^COӋČTOӋ]һʹ UML OӋڰlչ WebSphere Portal Ҳڲذlչ

    ʂ乤

    @ṩİஔҌһε portlet佨ģԓ portlet ᘌoĆ}ṩ˻ CRUDCreatexRead£UpdatehDeleteõķஔͨ@Nּչʾʹ UML @ϵyģĻԭṩ̫ĹʾOӋOӋˆTšIж@ portlet ܵSʾԓ܉׵،@ṩ˼cHr“ϵһ

    ӛס@һc҂Լbڌһ“Item”͵ĺΌ󣨻Ҳһ“Items”Mв҂P“Item”ʲôһMÑ͑ӋCκΖ|

    ʹռܱ^ֻЩģнĸֲ@헹ͨr UML ģļgˆTڏÑĽǶȿr韩һֱLԇռͬrOӋϵyΘЧķǼgˆT͘IշTPë@Щ˕f͑Z܉挍ӳIЧ

    OӋfCRUD ܲҪͨıSoó򲢲ҪӰܽoߎărֵҪJ@ҊĹ֮һҺϤ󌢎󼚹ϻM^rg;ʹ܉cģͺOӋ

    Lԇ__ȼeҲǂ}һȷdzֵϵy҂Ԅһ“Manage Item”c̫^ṩκõķֽһܕʾ҂Ęӱ portletѽһε“ManageItems”İĂ

    1. Search Itemsһ헻һ
    2. Adds Itemó
    3. Delete Itemđóhͨ
    4. Edit Item݋óеͨ

    D 1 һDU@Щ@ṩIJһÑcȫĂMн߀ṩһЩ~ԔϢаĵ䛰߀]Оӱṩ̫ԔϢ܉ԼĹ

    D 1.
     

    һǽYPÿv_ʼMһϵyģԸռĹRe~̈́~OӋͲD҂ʾ҂ֻоһʾԔ҂ Search Items _ʼеѽ@ʾģڽY Search Items ҂Էص@ҕDһģ

    ͽD

    ÁÑcϵygķкÎ׷ND 2 @ʾ SearchItems һD@DǏcϵyÑĽǶṩ@DҲQ“Ӿ”DǴ_ϵyнMc@D҂“ϵy”һΪĽMMMһķֽ҂Ϳ_ʼ_Խģ~⌦OӋе

    D 2. ӾIJD
     

    cϵyMһͨ^D߀DžfDÁUչOӋģʹõ~⌦ͽ~̈́~@N͵ĽģͷֽҪı֪RҪ UML ʹֻLԇ UML ŵÁOӋ portlet m

    D

    \҂ʂ䘋һ WebSphere Portal portlet@ԭҲ WebSphere Portal ṩĿK portlet MஔOӋr҂Ҫ”ЩҪ__ֳֵÿ^ portlet OӋҲOӋߵĹĻAM؞ WebSphere Portal l API

    չʾ҂ portlet ҂ѭ@]Ļģ-ҕD- Model-View-ControllerģʽD 3 @ʾ Manage Items portlet ĻDD 3 еṩһֺS portletژԼTórܕ@Щ portlet@Nʽõ Manage Items portlet ԽYM뵽ǰDе

    D 3. Portlet D
     

    ԭʼDҎ҂ͨ^һЩaʾһÿ

    PrimaryHTMLController.class

    @ portlet һҪǏ WebSphere Portal API ṩ PortletAdaptor ^^@һNpĿOӋ portletҪһpČИOٵĘI߉݋@еķе portlet иĘ˜ʷ

    package com.ibm.wps.manageitems;
    import java.io.*;
    import java.util.*;
    import com.ibm.wps.engine.*;
    import org.apache.jetspeed.portlet.*;
    import org.apache.jetspeed.portlet.event.*;
    import org.apache.jetspeed.portlets.*;
    public class ManageItemsPortletHTMLController extends PortletAdapter
    implements PortletTitleListener, ActionListener {
    public void init(PortletConfig portletConfig) throws UnavailableException {
    super.init(portletConfig);
    }
    public void doTitle(PortletRequest request, PortletResponse response) {
    }
    

    actionPerformed() @ portlet S߉݋@ʾԓһ if Z@ЩZ䌢ƙDƵ҂ČóеIJͬλ

    	public void actionPerformed(ActionEvent event) {
    PortletRequest request = event.getRequest();
    PortletSession session = request.getPortletSession();
    PortletAction _action = event.getAction();
    DefaultPortletAction action;
    if (_action instanceof DefaultPortletAction) {
    action = (DefaultPortletAction)_action;
    // Handle ACTION events
    if (action.getName().equals(ManageItemsUtil.ACTION_SEARCH)) {
    bean = ManageItemsUtil.searchItems(this, request);
    session.setAttribute(ManageItemsUtil.TARGET_PAGE,
    ManageItemsPortletUtil.JSPSEARCHRESULTS);
    session.setAttribute("ManageItemsBean", bean);
    }
    else if (action.getName().equals(ManageItemsUtil.ACTION_CREATE)) {
    bean = ManageItemsUtil.createItem(this, request);
    session.setAttribute(ManageItemsUtil.TARGET_PAGE,
    ManageItemsUtil.JSPConfirm);
    session.setAttribute("ManageItemsBean", bean);
    }
    else if (action.getName().equals(ManageItemsUtil.ACTION_SAVE)) {
    bean = ManageItemsUtil.saveItem(this, request);
    bean.clearErrors();
    bean.clearValues();
    session.setAttribute(ManageItemsUtil.TARGET_PAGE,
    ManageItemsUtil.JSPSaveResults);
    session.setAttribute("ManageItemsBean", bean);
    }
    }
    }
    

    doView() @ʾ҂ portlet ÁÑݔ@ʾYĸN JSP䮔һOò@ʾ_ JSP ĿҪ@ʾĂ JSP actionPerformed() Q

    	public void doView(PortletRequest request, PortletResponse response)
    throws PortletException, IOException {
    PrintWriter writer = response.getWriter();
    PortletContext context = getPortletConfig().getContext();
    PortletSession session = request.getPortletSession();
    ManageItemsBean bean = null;
    // Set initial jspName to JSPMain.
    // Use this as the default if TARGET_JSP
    String displayJsp = null;
    String jspPrefix = "/jsp/";
    String jspName = ManageItemUtil.JSPMain;
    String tempJsp = (String) session.getAttribute(ManageItemsUtil.TARGET_PAGE);
    if (tempJsp != null) {
    displayJsp = jspPrefix + tempJsp;
    } else {
    displayJsp = jspPrefix + jspName;
    }
    try {
    // Extract ManageItemsBean from session
    bean = (ManageItemsBean) session.getAttribute("ManageItemstBean");
    // Keep the bean from session if it exists
    if (bean != null) {
    } else {
    // Instantiate a new bean if it doesn't already exist
    }
    bean = ManageItemsUtil.initItemsBean(this, request);
    }
    // Put the bean back into session
    session.setAttribute("ManageItemsBean", bean);
    // Delegate the rendering to displayJsp
    context.include(displayJsp, request, response);
    // Log debug information
    if (getPortletLog().isDebugEnabled()) {
    getPortletLog().debug("++++ Set display JSP to " + displayJsp);
    }
    } catch (Exception ex) {
    getPortletLog()Debug(ex.getMessage());
    ex.printStackTrace(System.out);
    }
    }
    public void doHelp(PortletRequest request, PortletResponse response)
    throws PortletException, IOException {
    }
    public void doEdit(PortletRequest request, PortletResponse response)
    throws PortletException, IOException {
    }
    public void doConfigure(PortletRequest request, PortletResponse response)
    throws PortletException, IOException {
    }
    }
    

    PortletUtility.class

    manageItemsUtil FһЩ JSP ҪĎׂČú߀ portlet ĴI߉݋ͨ^ԼķаI߉݋ߌ߉݋Doһportlet ջ EJB ɳ

    package com.ibm.wps.manageitems;
    import java.io.*;
    import java.util.*;
    Import java.text.*;
    Import org.apache.jetspeed.portlet.*;
    Import org.apache.jetspeed.portlet.event.*;
    Import org.apache.jetspeed.util.*;
    public class ManageItemPortletUtil {
    public final static String ACTION_CREATE = "createItemAction";
    public static final String ACTION_DELETE = "deleteItemAction";
    public static final String ACTION_EDIT = "editItemAction";
    public static final String ACTION_SEARCH = "searchItemAction";
    public static final String ACTION_SAVE = "saveItemAction";
    public static final String JSP_ADD = "AddItem.jsp";
    public static final String JSP_CONFIRM = "ConfirmItem.jsp";
    public static final String JSP_EDIT = "EditItem.jsp";
    public static final String JSP_MAIN = "Index.jsp";
    public static final String JSP_SEARCH_RESULTS = "SearchResults.jsp";
    public static final String JSP_SAVE_RESULTS = "SaveResults.jsp";
    public static final String CALLING_PAGE = "callingPage";
    public static final String TARGET_PAGE = "targetPage";
    

    getNewActionURI() Ҫ portlet е JSP Á턓 JSP ȵķغͲ URI@Ѓɂ汾@ʾdž URI 汾ڶ汾ʹһ URI һ𱻂f

    	/**
    * Method: getNewActionURI(PortletResponse, String)
    * Return: String
    * Description: Build an action URI
    */
    public static String getNewActionURI(PortletResponse request,
    String actionName) {
    PortletURI portletURI = request.createReturnURI();
    DefaultPortletAction action = new DefaultPortletAction(actionName);
    portletURI.addAction(action);
    return portletURI.toString();
    }
    /**
    * Method: getNewActionURI(PortletResponse, String, String, String )
    * Return: String
    * Description: Build an action URI with additional parameters
    */
    public static String getNewActionURI(PortletResponse request,
    String actionName, String Param, String Value) {
    PortletURI portletURI = request.createURI();
    PortletAction portletAction = new DefaultPortletAction(actionName);
    portletURI.addAction(portletAction);
    portletURI.addParameter(Param, Value);
    return portletURI.toString();
    }
    

    initManageItemsBean() һxķҪԒʼ portlet bean bean dzǾͲҪ@

    	Public static ManageItemsBean initManageItemsBean(PortletAdapter portlet,
    PortletRequest request) {
    ManageItemsBean bean = new ManageItemsBean();
    //initialize bean here if necessary
    return bean;
    }
    

    @ṩ searchItems() һʾfI߉݋Է@ portlet @뷨ǞʹMֺܱSI߉݋@ԌFI߉݋ҪԒҲL portlet ջ EJBportlet ҪFȫ߀Ҫ@N͵

    	Public static ManageItemsBean searchItems(PortletAdapter portlet,
    PortletRequest request) {
    ManageItemsBean bean = new ManageItemsBean();
    //business logic goes here!
    return bean;
    }
    }
    

    PortletBean.class:

    @ bean ҂惦c JSP MͨŵͨO portlet ڃ҂ԓ bean پ浽 PortletSession Ҫr portlet ԓ bean ȵĔ portlet Model 2 JSP wϵܘOӋԓ bean ҂OӋҪD 3 ѽһM getter setter ģMF҂ӑՓܕrҪķԓԼČF޸Щ getter setter

    JSP HTML

    úúͽú҂Կһ҂ portlet ıʾǰѽᵽ^ԓʾ҂Ϥģ-ҕD-_l Web ór J2EE ѷJSP @NҪ

    JSP HTML c Java ZԵĻyѱʾȫx҂һЩCһЩI߉݋뵽 JSP ]ķ_lб_@һcһõOӋԎ_@һcõOӋҲoпܵr׃__lĸԼZԱн_l߿Ԏ_ JSP ȳFκΘI߉݋޵OӋ_

    ҂ԼʾӃɂ JSP עD 4 ӵģеÿ JSP҂߀һP HTML @NP“ʹ҂҂ģʾ˽c͑C˽֮gķx Manage Items portlet҂ѽ棺

    Main.jsp
    @ȱʡr@ʾ JSPdoView() Ęӱa@ʾ@һʾ] actionHandler() OԒԓʾO TARGET_PAGE @ʾԓ
    Main.html
    @ Main.jsp Ŀ͑C˰汾@һ|l@еIJ|l actionPerformed() _ʼ
    SearchResults.jsp
    @ JSP Java bean ķʽ@ĽYʽ HTML @ʾY
    SearchResults.html
    @YĿ͑C@ʾ

    ͨ^UչԭʼDʹ@Щ¹ʹ҂Ըõ˽҂ portlet wµDD 4҂һĈD@D҂ portlet ܵнM

    D 4. Search D
     

    mȻDʹ҂ԏĽMҕDṩ҂ portlet аl¼еҕDʹ@ʾΰlЈD҂ԿܵĸԔϢD 5 ҂ĽM^ЌHMнע⣺҂ʹ÷Qstereotype ͨӢZgĽ

    D 5. Search ЈD
     

    ӢZı“Determine Action”Էֽ÷dz@ڶOӋęnaƷڌF^нo_l̎PģͱķNeԔ̶]@Ҏt漰ŬԔ̶ȼeԓӳܵ|͹̵ҎģС

    ӱ JSP a

    OӋ JSP r҂ԓ҂Á혋Լ portlet cĿ҂OӋ҂ه Java bean ҂ṩҪ JSP @ʾκϢO@һc҂Ϳ bean ڞ JSP ar_ʼҪȌ댢Ҫκΰ@ portlet ҂ҪL manageItemsUtil() @߀ԓκĘӛ

    Dڞ Java bean ͌óģķӛ portlet սģ JSP Mѽ_lͽģĶƘӛôͿһN stereotype DO_ʼʹ@Щ֮ǰԓһе portlet Ƶϲc

    <%@ page import="org.apache.jetspeed.portlet.service.*" %>
    <%@ page import="org.apache.jetspeed.portlet.*" %>
    <%@ page import="org.apache.jetspeed.portletcontainer.PortletRequestImpl" % >
    <%@ page import="org.apache.jetspeed.portlet.*" %>
    <%@ page import="com.ibm.wps.engine.RunData" %>
    <%@ page import="com.ibm.wps.manageitems.*" %>
    <%@ page import="com.ibm.wps.services.authorization.*,
    com.ibm.wps.puma.*,com.ibm.wps.util.*" %>
    <%@ taglib uri="/WEB-INF/tld/portlet.tld" prefix="portletAPI" %>
    <portletAPI:init/>
    <jsp:useBean id="ManageItemsBean"
    class="com.ibm.wps.manageitems.ManageItemsBean" scope="session" />
    

    ѽ JSP Є^ԄһʾIJ̎ URI@ʾһ ACTION_CREATE 朽{@ʾr|lRe@ actionPerformed() ƬȻ̎򌢈κҪеIJ TARGET OÞһҪ@ʾ JSP

    <a href="<%= ManageItemsUtil.getNewActionURI(portletResponse,
    ManageItemsUtil.ACTION_CREATE) %>">Add Item</a>
    

    ʹдaӱģе߀ʹһ̎ URIʹ portlet ӛ΅a@첻҂ϵyнģǞ WebSphere Portal ṩ API һѽ WebSphere Portal ṩĽMģǿܵ@ӕģ͵ďs̶ԓֻ@ʾPʹ API ԔϢrʹ@NeԔ̶

    <form name="itemsearchform"
    action="<%= ManageItemUtils.getNewActionURI(portletResponse,
    ManageItemsUtil.ACTION_SEARCH) %>" method="post">
    <table border="0" cellpadding="3" cellspacing = "3">
    <tr>
    <td align="left">Customer ID:</td>
    <td align="left">
    <input type="text" name="PORTLETAPI:ENCODENAMESPACE value="itemname">" value="<%= ManageItemBean.getItemName() %>">
    </td>
    </tr>
    <tr>
    <tr>
    <td align="right">
    <input type="submit" name="" value="" />">
    <br>
    </td>
    </tr>
    </table>
    </form>
    

    _l

    ֻһģ;;wƵ@Kܵ΢OӋ_l^Ҳ׵öϵy҂ϵyеҪMȫOӋòҽӺһ_l߲HԿԓЩ󌍬F߀Կ@Щ󌍬F_lgReĸĿģбľϵyбӳ

    D 6 ѽչʾˌİYڽģУ@NYcϣ_l^ЄİY@Nڰ໥Bӵc_lԼĿϵyķƵĸʽMһ

    D 6. ģ͞g[
     

    caƷ羀ģͣwire frame modelOӋęnһʹÕrUML ɞһN_l߂_OӋď󷽷ṩĴaӱṩһʾΞ錦ģʾ߀ṩһЩʹ JSP ͌ó_l portlet ѷʾϣѽṩϢʹOӋԼTór_ʼʹ UMLڌҌLԇ@ṩăAģ portlet Uչ portlet @Щ

    Y

    x

    ԴIyܛyԇW http://www.kjueaiud.com/


    PIyܛyԇW | IyܛyԇW | V | Ͷָ | “ϵ҂ | Wվ؈D |
    (C) 20032010 TestAgeIyܛyԇW|IyHƼ޹˾|ܛyԇ̎ӖW All Rights Reserved
    к^Pϴ9̖ƼB1402 ICP10010545̖-5
    gֺ֧͘I“ϵinfo@testage.com.cn Ԓ010-51297073

    ܛyԇ | IyHISTQBISTQBپWTMMiTMMiJCHܛyԇ̎JCIyܛyԇW

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>