WEB开发网
开发学院软件开发Java Mashups4JSF 简介:使 Mashups 更加简单 阅读

Mashups4JSF 简介:使 Mashups 更加简单

 2010-08-11 00:00:00 来源:WEB开发网   
核心提示: 清单 7 显示了地区 bean 代码,包括简单的 getter 和 setter 方法及 setSelectedPlace 操作,Mashups4JSF 简介:使 Mashups 更加简单(5),清单 7. 地区 bean 代码(Place.java)publicclassPlace{Strin

清单 7 显示了地区 bean 代码,包括简单的 getter 和 setter 方法及 setSelectedPlace 操作。

清单 7. 地区 bean 代码(Place.java)

public class Place { 
  String shortAddressName; 
  String longAddressName; 
  String postalCode; 
 
  // Some setters and getters here ... 
 
  public String setSelectedPlace() { 
    FacesContext.getCurrentInstance().getExternalContext(). 
    getRequestMap().put("selectedPlace", this); 
 
    return null; 
  } 
} 

Places mashup 应用程序(JSF 2.0 版本)

Mashups4JSF 可以与 JSF 2 实现(Mojarra V2.0 和 Apache MyFaces V2.0)完美结合使用。Places 应用程序具有一个 JSF 2.0 版本。JSF 2.0 版本与 JWL 版本之间的主要区别在于 Ajax 处理方式。多亏有了 JSF 2,Ajax 处理成为 <hx:behavior/> 规范和功能的一部分,且 <hx:ajaxRefreshxxx/> 标记现在可以通过 <f:ajax/> 标记实现。清单 8 展示了 JSF 2.0 Ajax 中的 index.xhtml (Places 应用程序页面)代码。

清单 8. Places 应用程序 XHTML 页面(index.xhtml)

<h:dataTable value="#{places.data}" 
       var="place" 
       ...> 
       <!--Columns Here--> 
   
       <h:column> 
       <f:facet name="header"> 
         <h:outputText value="Action" /> 
       </f:facet> 
  
      <h:commandButton id="cmdRetrieve" 
               value="Retrieve Information" 
               action="#{place.setSelectedPlace}"> 
               <f:ajax render=":form1:placeMap :form1:placeWeather"/> 
      </h:commandExButton> 
  
       </h:column> 
</h:dataTable> 
 
 
<h:panelGrid columns="2" id="placeInformation"> 
       <h:panelGroup id="placeMap"> 
         <m:map width="400px" height="300px" 
            renderOnWindowLoad="false" 
            rendered="#{selectedPlace ne null}" 
            address="#{selectedPlace.longAddressName}" 
            zoom="9"> 
            <m:marker/> 
            <m:htmlInformationWindow 
                htmlText="#{selectedPlace.longAddressName}"/> 
         </m:map> 
       </h:panelGroup> 
   
       <h:panelGroup id="placeWeather"> 
         <mashup:yahooWeather locationCode="#{selectedPlace.postalCode}" 
                   rendered="#{selectedPlace ne null}" 
                   temperatureType="c"/> 
       </h:panelGroup> 
</h:panelGrid> 
 

上一页  1 2 3 4 5 6  下一页

Tags:MashupsJSF 简介 Mashups

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接