kapok

          垃圾桶,嘿嘿,我藏的這么深你們還能找到啊,真牛!

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            455 隨筆 :: 0 文章 :: 76 評論 :: 0 Trackbacks
          http://dev2dev.bea.com.cn/techdoc/wlportal/200312115.html

          要進一步了解WebLogic Workshop方面的信息,請參照我們WebLogic Workshop FAQ。

          1.  在頁面流流視圖中,為什么看不到由外部頁面(即不屬于當前頁面流目錄的頁面)引發的動作?

          2.  WebLogic Express上,可以部署使用Java頁面流(JPF)和NetUI標簽庫的web應用嗎?

          3.  頁面流何時被銷毀?

          4.  如何訪問被嵌套頁面流的父(嵌套)頁面流?

          5.  一個JSP頁面與定義消息源的JPF文件不在同一個文件夾下,該JSP如何使用此JPF<netui:error>元素中的消息源?

          6.  Workshop 8.1支持StrutDynaValidatorForm嗎?

          7.  如何為使用排序服務的網格設置初始排序?

          8.  如何指定<netui:imageButton>元素中的“action”參數?

          9.  JSP中使用控件時,如何為其指定屬性?

          10.             為什么存在允許我們使用pageContext.getAttributepageContext.setAttribute<netui:GetData>標簽,卻不存在類似的<netui:SetData>標簽?

          11.             如何將動態數據傳遞給<netui:methodParameter>標簽?

          12.             如何使第三方或特定于應用的標簽庫出現在IDE 選項板(Pallette)窗口中?

          13.             當在netui-data:repeater中嵌套netui-data:repeater時,如何能夠訪問最內部repeater中的外部項的屬性?

          14.             有沒有辦法將NetUI標簽中的XScript表達式綁定到jsp頁面中的局部變量?

          15.             JSLTXScript之間有什么關系?

          16.             NetUIpageContext數據綁定作用域與javax.servlet.http.PageContext屬性映射之間有什么關系?

          17.             如何對NetUI標簽庫中的各種標簽加以分類,以使其更好理解?

          18.             頁面流支持Struts Tiles嗎?

          19.             在頁面流數據綁定作用域內,我能夠使用的各種可用屬性有哪些?

          20.             如何從當前頁面流的JSP中調用不同頁面流中的動作?

          問:在頁面流流視圖(PageFlow View)中,為什么看不到由外部頁面(即不屬于當前頁面流目錄的頁面)引發的動作?

          答:為了使頁面流流視圖(PageFlow View)看起來更加一目了然,Workshop在流視圖中顯示了對外部頁面(不屬于當前頁面流目錄的頁面)的引用,但是沒有顯示任何由這些外部頁面引發的動作。要查看由外部頁面引發的動作,您需要在與相應頁面所在的目錄中打開頁面流的流視圖。

          問:在WebLogic Express上,可以部署使用Java頁面流(JPF)和NetUI標簽庫的web應用嗎?

          答:答案是肯定的,使用JPFNetUI標簽庫的web應用可以被用在WebLogic ExpressWLX)上。然而,您不能在WLX上使用控件,因為它們使用了EJB/JMS。在Service Pack 2上,頁面流和NetUI標簽庫將能夠以一種獨立于平臺的方式為servlet容器(而不僅僅是WebLogic服務器)上的運行時部署所用。

          問:頁面流何時被銷毀?

          答:頁面流被銷毀的時候是:

          a.       流移動到不同的、不可嵌套的頁面流時

          b.       被嵌套的頁面流返回到嵌套它的頁面流時

          c.       當會話超時并被銷毀時。當前Http會話的生存期是頁面流能夠具有的最長生存期。

          注意,這里有一點很重要,即任何被嵌套的頁面流都隱藏在嵌套頁面流的“?!敝?,并且對于當前被嵌套的頁面流來說,無需返回到嵌套它的頁面流,即可轉到外部頁面流(從而銷毀了嵌套頁面流的整個棧)。

          問:如何訪問被嵌套頁面流的父(嵌套)頁面流?

          答:您可以使用下列方法從被嵌套的頁面流中訪問嵌套頁面流。

          PageFlowController parentPageFlow = PageFlowUtils.getNestingPageFlow(getRequest());


          如果函數

          "PageFlowUtils.getNestingPageFlow( getRequest() )"


          返回null,這就意味著被嵌套的頁面流是被直接調用的,而不是通過父頁面流調用的。

          問:一個JSP頁面與定義消息源的JPF文件不在同一個文件夾下,該JSP如何使用此JPF<netui:error>元素中的消息源?

          答:如果您正在JSP中引用的消息源被定義為“test”文件夾(位于web項目的根目錄下)中頁面流的默認消息源,那么通過在“bundle”名稱之前添加其后帶有文件夾名稱的“org.apache.struts.action.MESSAGE”前綴,您可以像下面這樣使用<netui:error>元素:

          <netui:error bundle="org.apache.struts.action.MESSAGE/test"

          value="myerror"></netui:error>


          或者

          <netui:errors bundle="org.apache.struts.action.MESSAGE/test" </netui:errors>


          如果您已經在頁面流中使用“err”鍵定義了消息源,如下所示:

           * @jpf:message-resources key="err" resources="validation.test.Errors"


          您需要將org.apache.struts.action.MESSAGE”字符串替換為鍵值,如下所示:

          <netui:error bundle="err/test" value="myerror"></netui:error>


          問:Workshop 8.1支持StrutsDynaValidatorForm嗎?

          答:Workshop 8.1版本不支持StrutsDynaValidatorForm。

          問:如何為使用排序服務的網格設置初始排序?

          答:在版本8.1中,SortFilterService不支持設置過濾器的初始排序。您始終可以在JPF中手動創建一個排序,或者在RowSet控件上的SQL中使用靜態的WHEREORDER BY子句。關于這些方法惟一的限制是,當為頁面添加書簽時,排序與過濾器不會反映在所使用的URL中。

          問:如何指定<netui:imageButton>元素中的“action”參數?

          答:<netui:imageButton>元素不支持“action”參數。它總是前移到與表單相關的默認動作。您可以使用<netui:imageAnchor>元素作為代替,如下所示:

          <netui:imageAnchor border="0" action="foo" src="/foo/bar.gif" width="68" height="24"/>


          問:在JSP中使用控件時,如何為其指定屬性?

          答:不幸的是,當前版本不支持這種行為。但存在其他兩種選擇:

          1.  執行頁面流中控件的方法,并將結果存放于request及動作表單中傳遞給相應的頁面。

          2.  使用callControl標簽的控制屬性中的表達式,直接綁定到一個控件,該控件在頁面流中被公開為如下形式:

          <netui-data:callControl controlId="{pageFlow.myDatabaseControl}" ... />


          接下來,您可以使用頁面流中控件實例上的注解。

          問:為什么存在允許我們使用pageContext.getAttributepageContext.setAttribute<netui:GetData>標簽,卻不存在類似的<netui:SetData>標簽?

          答:getData標簽的作用是,允許JSP作者針對由于數據綁定而產生的對象書寫scriptlet。我們不提供setData標簽,因為我們要使程序設計模型和工具繼續支持它,使其專注于在頁面流中添加業務/狀態維護邏輯。任何對(session|request).setAttribute的調用多半應該在一個動作(action)內完成。這可以避免頁面出現副作用,并使它們更加容易維護。

          問:如何將動態數據傳遞給<netui:methodParameter>標簽?

          答:我們可以使動態數據可以為<netui:methodParameter>標簽所用,具體方法是從pageContext變量來設置并訪問它,如下所示:

          <%

          String s = "name";

          pageContext.setAttribute("theName", s);

          %>

          <netui-data:callControl controlId="productsDBControl"

          method="insertProduct">

           <netui-data:methodParameter value="{pageContext.theName}"/>>

          </netui-data:callControl>


          問:如何使第三方或特定于應用的標簽庫出現在IDE 選項板(Pallette)窗口中?

          答:要在IDE中為Pallette窗口添加一個標簽庫,您需要:

          1.  將標簽庫JAR添加到相關項目的WEB-INF/lib目錄中。

          2.  web.xml中添加一項使其指向標簽庫的TLD文件,并賦予相應的URI,這使得JSP文件通過該URI引用TLD。

          接著,您可以打開一個JSP,查看Insert菜單或標簽選項板,以確保標簽庫中的標簽能夠顯示出來。

          問:當在netui-data:repeater中嵌套netui-data:repeater時,如何能夠訪問最內部repeater中的外部項的屬性?

          答:您可以訪問最內部repeater中外部repeater的屬性,具體方法是使用一個形如“{container.container.*}”的表達式,其中第一個容器引用當前的repeater,而第二個容器則引用其父repeater,等等。還有另外一種辦法,通過使用netui-data:getData標簽,您可以在頁面上下文中的外部repeater中設置一個變量,并在形如{pageContext.*}的被嵌套的repeater中訪問該變量。

          問:有沒有辦法將NetUI標簽中的XScript表達式綁定到jsp頁面中的局部變量?

          答:<netui-data:getData>標簽可以用于計算XScript表達式的值,并將其放置到JSPpageContext中。接下來就可以在scriptlet中訪問pageContext中的變量。例如,

          <netui-data:getData resultId="first" value="{actionForm.firstname}"/>

              <% String firstName = (String) pageContext.getAttribute("first"); %>


          問:JSLTXScript之間有什么關系?

          答:在當前的版本中,JSTL的表達式語言(EL)與XScript之間沒有任何關系。您可以在需要的時候使用JSTL標簽,而腳本語言不會彼此干擾。

          問:NetUIpageContext數據綁定作用域與javax.servlet.http.PageContext屬性映射之間有什么關系?

          答:NetUIpageContext數據綁定作用域只不過是javax.servlet.http.PageContext屬性映射頂部的一層而已。這個上下文的定義是,它訪問頁面作用域內的名稱/值對的映射。例如,下面這種形式是合法的:

          <%

              pageContext.setAttribute("myPageContextVar", "A Foo String");

          %>


          接下來的這兩種形式是完全等同的:

          <netui:content value="{pageContext.myPageContextVar}"/>



          <% out.write(pageContext.getAttribute("myPageContextVar"); %>


          問:如何對NetUI標簽庫中的各種標簽加以分類,以使其更好理解?

          答:對NetUI標簽庫值的標簽進行分類的基本方法是,這些標簽是只讀的,還是可讀寫的(即是否與服務器進行數據的交互)。

          基于這標準,標簽可以被劃分為三類:

          a.  只讀 Read-Only

          只讀標簽有<netui:content><netui:label>等等。它們從標簽中的“value”屬性中讀取數據,但不會將數據發回給服務器。

          b.  讀寫單值 Read-Write Single Value

          這一類的標簽有<netui:textbox>、<netui:textarea>、<netui:checkbox>等等。這些標簽需要了解兩件事情:

          l         JSP呈現時,在何處獲取數據片斷。

          l         在請求提交時,將數據片斷放置到何處。

          “數據片斷”即為“dataSource”屬性的值。請注意,這與javax.sql.Datasource對象沒有任何關系。

          c.  讀寫多值 Read-Write multiple value

          這一類標簽包括<netui:checkBoxGroup><netui:select>等等,它們不過是上面一類標簽的多值版本罷了。它們同樣需要了解從何處獲取各種選項,以便從服務器讀取并顯示給用戶。它們可以從“optionsDataSource”屬性中獲得?!?/SPAN>dataSource”屬性被用于引用將被寫回到服務器上的數據。

          問:頁面流支持Struts Tiles嗎?

          答:在當前的版本中,頁面流不支持下面這種做法,即通過在頁面流中使用Struts-merge功能以求在頁面流中使用Struts Tiles。這是因為Tiles要求使用它自己的RequestProcessor,而這會干擾頁面流RequestProcessor。然而,我們的確支持Tiles模塊與頁面流在同一個Web項目中共存與交互。

          問:在頁面流數據綁定作用域內,我能夠使用的各種可用屬性有哪些?

          答:在頁面流數據綁定作用域內,可用的屬性包括任何公共字段,以及任何開發人員在特定頁面流中定義的公共JavaBean屬性。例如,下面的頁面流定義了可以與標簽屬性中的“{pageFlow.name}”綁定的“name”屬性。

          public class Controller extends PageFlowController

          {

              public String name;

              /**

               * @jpf:action

               * @jpf:forward name="index" path="index.jsp"

               */

              protected Forward begin()

              {

                  return new Forward("index");

              }

          }

          問:如何從當前頁面流的JSP中調用不同頁面流中的動作?

          答:要從當前頁面流的JSP中調用不同頁面流中的動作,您可以使用<netui:anchor>標簽中的“href”屬性。(注意,您不能使用“action”屬性,因為它只能用于調用當前頁面流中的動作)。您可以構造遵循模式的URI。

          "<directory>/<action>.do",


          例如:.,

          <netui:anchor href="/otherPageFlow/myMethodOne.do">Do Method

          One</netui:anchor>

          posted on 2005-05-20 10:15 笨笨 閱讀(895) 評論(0)  編輯  收藏 所屬分類: J2EEALLWeblogic Portal
          主站蜘蛛池模板: 河津市| 贡嘎县| 平乡县| 栖霞市| 祁东县| 昆山市| 金门县| 宁阳县| 长葛市| 壶关县| 特克斯县| 甘谷县| 株洲市| 辽中县| 甘德县| 富蕴县| 汝南县| 咸阳市| 抚州市| 军事| 沁阳市| 凯里市| 故城县| 漠河县| 诸城市| 天等县| 靖州| 荃湾区| 奈曼旗| 延吉市| 郴州市| 惠州市| 长顺县| 长寿区| 西林县| 马鞍山市| 怀远县| 康平县| 中西区| 建始县| 绥芬河市|