You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mf...@apache.org on 2010/06/02 01:35:49 UTC
svn commit: r950308 [1/13] - in /myfaces/portlet-bridge/core/trunk_2.0.x: ./
api/src/main/java/javax/portlet/faces/
api/src/main/java/javax/portlet/faces/component/ examples/ examples/blank/
examples/blank/src/main/webapp/WEB-INF/ examples/carstore/ ex...
Author: mfreedman
Date: Tue Jun 1 23:35:42 2010
New Revision: 950308
URL: http://svn.apache.org/viewvc?rev=950308&view=rev
Log:
PORTLETBRIDGE-143: WriteBehindResponse mechanism(s) not working properly
PORTLETBRIDGE-126: Content before f:view should be handled properly
PORTLETBRIDGE-125: Portlet Schema Validation for portlet-bridge-blank-2.0.0-SNAPSHOT.war fails
PORTLETBRIDGE-124: Edit in portlet-bridge-demo-2.0.0-SNAPSHOT does not work
Also added the Mojarra Examples
Added:
myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/BridgeWriteBehindResponse.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/CarBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/CarCustomizer.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/CarStore.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/CreditCardConverter.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/CustomerBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/FirstNameChanged.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/FormatValidator.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/FormatValidatorTag.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/MessageFactory.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Common_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Custom.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Deluxe.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Jalopy.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Jalopy_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Jalopy_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Jalopy_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Jalopy_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Luxury.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Luxury_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Luxury_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Luxury_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Luxury_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Messages.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Messages_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Messages_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Messages_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/OptionPrices.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Performance.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Resources.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Resources_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Resources_en.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Resources_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Resources_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Roadster.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Roadster_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Roadster_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Roadster_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Roadster_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/SUV.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/SUV_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/SUV_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/SUV_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/SUV_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/bundles/Standard.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/carstore/package.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/myfaces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/myfaces/portlet/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/myfaces/portlet/faces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/myfaces/portlet/faces/examples/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/myfaces/portlet/faces/examples/renderkit/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/java/org/apache/myfaces/portlet/faces/examples/renderkit/AreaRenderer.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Common_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Custom.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Deluxe.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Jalopy.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Jalopy_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Jalopy_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Jalopy_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Jalopy_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Luxury.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Luxury_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Luxury_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Luxury_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Luxury_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Messages.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Messages_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Messages_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Messages_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/OptionPrices.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Performance.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Resources.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Resources_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Resources_en.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Resources_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Resources_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Roadster.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Roadster_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Roadster_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Roadster_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Roadster_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/SUV.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/SUV_de.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/SUV_es.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/SUV_fr.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/SUV_options.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/resources/carstore/bundles/Standard.properties
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/WEB-INF/carstore.tld
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/bottomMatter.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/carDetail.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/chooseLocale.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/confirmChoices.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/customerInfo.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/finish.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/150x126_Jalopy.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/150x126_Luxury.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/150x126_Roadster.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/150x126_SUV.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/200x168_Jalopy.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/200x168_Luxury.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/200x168_Roadster.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/200x168_SUV.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/BuyBtn.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/FinishBtn.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/MoreBtn.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/cardemo.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/current.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/duke.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/world.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/world_france.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/world_germany.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/world_namer.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/images/world_samer.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/index.jsp.bak
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/allclasses-frame.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/allclasses-noframe.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/beans.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/CarBean.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/CarCustomizer.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/CarStore.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/CreditCardConverter.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/CustomerBean.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/FirstNameChanged.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/FormatValidator.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/FormatValidatorTag.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/MessageFactory.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/package-frame.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/package-summary.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/carstore/package-tree.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/constant-values.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/data.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/deprecated-list.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/flow.jpg (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/help-doc.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/index-all.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/index.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/overview-tree.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/package-list
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/resources/inherit.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/serialized-form.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/javadocs/stylesheet.css
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/optionsPanel.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/storeFront.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/src/main/webapp/stylesheet.css
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/java/guess/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/java/guess/NumberBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/java/guess/facelets/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/java/guess/facelets/PortletFaceletViewHandler.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/guess.xhtml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/index.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/response.xhtml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/facelets-guess/src/main/webapp/template.xhtml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/java/guessNumber/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/java/guessNumber/MessageFactory.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/java/guessNumber/UserNumberBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/greeting.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/index.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/response.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumber/src/main/webapp/wave.med.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/guessNumber/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/guessNumber/MessageFactory.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/guessNumber/UserNumberBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/apache/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/apache/myfaces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/apache/myfaces/portlet/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/apache/myfaces/portlet/faces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/apache/myfaces/portlet/faces/application/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/java/org/apache/myfaces/portlet/faces/application/BridgeMojarraRenderFilter.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/greeting.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/index.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/response.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraFilter/src/main/webapp/wave.med.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/guessNumber/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/guessNumber/MessageFactory.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/guessNumber/UserNumberBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/apache/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/apache/myfaces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/apache/myfaces/portlet/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/apache/myfaces/portlet/faces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/apache/myfaces/portlet/faces/application/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/java/org/apache/myfaces/portlet/faces/application/BridgeMojarraResponseWrapper.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/greeting.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/index.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/response.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMojarraWrapper/src/main/webapp/wave.med.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/guessNumber/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/guessNumber/MessageFactory.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/guessNumber/UserNumberBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/apache/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/apache/myfaces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/apache/myfaces/portlet/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/apache/myfaces/portlet/faces/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/apache/myfaces/portlet/faces/application/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/java/org/apache/myfaces/portlet/faces/application/BridgeMyFacesRenderFilter.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/greeting.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/index.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/response.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/guessNumberMyFacesFilter/src/main/webapp/wave.med.gif (with props)
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/java/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/java/helloDuke/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/java/helloDuke/UserNameBean.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/resources/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/resources/META-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/resources/META-INF/NOTICE
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/WEB-INF/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/WEB-INF/faces-config.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/WEB-INF/jetty-pluto-web-default.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/WEB-INF/web.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/helloDuke/
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/helloDuke/error.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/helloDuke/greeting.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/helloDuke/index.html
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/helloDuke/response.jsp
myfaces/portlet-bridge/core/trunk_2.0.x/examples/helloDuke/src/main/webapp/helloDuke/wave.med.gif (with props)
Removed:
myfaces/portlet-bridge/core/trunk_2.0.x/examples/demo/
myfaces/portlet-bridge/core/trunk_2.0.x/impl/src/main/java/org/apache/myfaces/portlet/faces/application/PortletViewHandlerRenderResponseWrapper.java
myfaces/portlet-bridge/core/trunk_2.0.x/impl/src/main/java/org/apache/myfaces/portlet/faces/application/PortletViewHandlerResourceResponseWrapper.java
Modified:
myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/Bridge.java
myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java
myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/component/PortletNamingContainerUIViewRoot.java
myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/src/main/webapp/WEB-INF/portlet.xml
myfaces/portlet-bridge/core/trunk_2.0.x/examples/pom.xml
myfaces/portlet-bridge/core/trunk_2.0.x/impl/src/main/java/org/apache/myfaces/portlet/faces/application/PortletViewHandlerImpl.java
myfaces/portlet-bridge/core/trunk_2.0.x/impl/src/main/java/org/apache/myfaces/portlet/faces/bridge/BridgeImpl.java
myfaces/portlet-bridge/core/trunk_2.0.x/impl/src/main/java/org/apache/myfaces/portlet/faces/context/PortletExternalContextImpl.java
myfaces/portlet-bridge/core/trunk_2.0.x/pom.xml
Modified: myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/Bridge.java
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/Bridge.java?rev=950308&r1=950307&r2=950308&view=diff
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/Bridge.java (original)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/Bridge.java Tue Jun 1 23:35:42 2010
@@ -130,6 +130,30 @@ Bridge
* BRIDGE_PACKAGE_PREFIX + context.getPortletName() + DEFAULT_VIEWID_MAP
*/
public static final String DEFAULT_VIEWID_MAP = "defaultViewIdMap";
+
+ /** PortletContext attribute that a portlet can set prior to calling the bridge's
+ * init() method to configure the response class the bridge uses/sets when it
+ * dispatches to render a portlet or a resource. The attribute's value is expected to be a class
+ * instance that implements <code>javax.portlet.faces.BridgeWriteBehindResponse</code>
+ * Because the WriteBehind JSP support
+ * is Faces implementation specific, implementations differ depending on both the
+ * Faces provider and its version. Developers therefore must configure the
+ * appropriate class for a given environment. <p>
+ * Note: in Portlet 1.0 Bridge, because it lacked wrapper support, this behavior
+ * was supported by using a servlet filter to wrap the response. The bridge's
+ * default mechanism (i.e. when a portlet hasn't configured a specific class)
+ * preserves the support for such filters. That is by default the Portlet 2.0
+ * bridge is backwards compatible with an implementation used in a Portlet 1.0 environment.<p>
+ * It is also important to note that the Portlet 1.0 Bridge mechanism which uses
+ * servlet filters and the Portlet 2.0 Bridge mechanism of implementing the same
+ * support in a Portlet <code>ResponseWrapper<code> are unlikely to work together.
+ * <br>
+ *
+ * As this attribute is scoped to a specific portlet in an application-wide context
+ * the attribute name must be include the portlet name as follows:
+ * BRIDGE_PACKAGE_PREFIX + context.getPortletName() + WRITE_BEHIND_RESPONSE
+ */
+ public static final String WRITE_BEHIND_RESPONSE = "writeBehindResponse";
// The following are request attributes a portlet can set to control the request
// processing of the bridge.
Added: myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/BridgeWriteBehindResponse.java
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/BridgeWriteBehindResponse.java?rev=950308&view=auto
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/BridgeWriteBehindResponse.java (added)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/BridgeWriteBehindResponse.java Tue Jun 1 23:35:42 2010
@@ -0,0 +1,73 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable
+ * law or agreed to in writing, software distributed under the License is distributed on an "AS IS"
+ * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
+ * for the specific language governing permissions and limitations under the License.
+ */
+package javax.portlet.faces;
+
+import javax.faces.context.FacesContext;
+import javax.portlet.Event;
+import javax.portlet.faces.event.EventNavigationResult;
+
+
+/**
+ * The <code>BridgeWriteBehindResponse</code> interface defines the api the bridge relies
+ * on to acquire the buffered JSP output from the response(Wrapper) used to handle the Faces
+ * implementation dependent writeBehindResponse methodlogy/interface.<p>
+ *
+ * Note: the Portlet 1.0 Bridge relied on Portlet 1.0 which didn't support response wrappers.
+ * In that version the writeBehindResponse behavior is provided in a Servlet ResponseWrapper inserted
+ * in a Servlet filter set up to be called on included JSPs. In Portlet 2.0 Bridge this behavior can
+ * now be implemented directly in a Portlet ResponseWrapper which can then be registered for use with the bridge.
+ * So that the bridge recognizes and use this support, such wrappers must implement this interface.<p>
+ *
+ * Implementations must be one of the Portlet 2.0 <code>ResponseWrappers</code> and have a null constructor that utilizes
+ * <code>FacesContext.getCurrentInstance().getExternalContext().getResponse()</code>
+ * to acquire the response to be wrapped.
+ */
+
+public interface BridgeWriteBehindResponse
+{
+ /**
+ * Called by the bridge after dispatching is complete to determine whether the
+ * JSP AfterViewContent was written as chars (written via a <code>PrintWriter</code>
+ *
+ *
+ * @return <code>true</code> if the response (buffer) is represented as chars
+ * written via the <code>PrintWriter</code>, false otherwise.
+ */
+ public boolean isChars();
+
+ /**
+ * Called by the bridge after dispatching is complete to acquire the AfterJSPContent
+ * when the response has been written as characters. The bridge writes this buffer
+ * to the (real) response.
+ *
+ * @return the response as a char[].
+ */
+ public char[] getChars();
+
+ /**
+ * Called by the bridge after dispatching is complete to determine whether the
+ * JSP AfterViewContent was written as bytes (written via an <code>OutputStream</code>
+ *
+ *
+ * @return <code>true</code> if the response (buffer) is represented as bytes
+ * written via the <code>OutputStream</code>, false otherwise.
+ */
+ public boolean isBytes();
+
+ /**
+ * Called by the bridge after dispatching is complete to acquire the AfterJSPContent
+ * when the response has been written as bytes. The bridge writes this buffer
+ * to the (real) response.
+ *
+ * @return the response as a byte[].
+ */
+ public byte[] getBytes();
+}
Modified: myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java?rev=950308&r1=950307&r2=950308&view=diff
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java (original)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java Tue Jun 1 23:35:42 2010
@@ -91,7 +91,8 @@ public class GenericFacesPortlet extends
* in an environment as its more usual to rely on the self detection.
*/
public static final String BRIDGE_CLASS = Bridge.BRIDGE_PACKAGE_PREFIX + "BridgeClassName";
-
+
+
/** Portlet init parameter that defines the default ViewId that should be used
* when the request doesn't otherwise convery the target. There must be one
* initialization parameter for each supported mode. Each parameter is named
@@ -100,6 +101,13 @@ public class GenericFacesPortlet extends
*/
public static final String DEFAULT_VIEWID = Bridge.BRIDGE_PACKAGE_PREFIX + "defaultViewId";
+ /** Portlet init parameter that defines the class which implements
+ * <code>javax.portlet.faces.BridgeWriteBehindResponse</code> and is
+ * (to be) used by the bridge when using dispatch() to render JSF views.
+ */
+ public static final String BRIDGE_WRITE_BEHIND_RESPONSE_CLASS = Bridge.BRIDGE_PACKAGE_PREFIX + "bridgeWriteBehindResponseClassName";
+
+
/** Portlet init parameter that defines the render response ContentType the bridge
* sets prior to rendering. If not set the bridge uses the request's preferred
* content type.
@@ -176,6 +184,11 @@ public class GenericFacesPortlet extends
Map defaultViewIdMap = getDefaultViewIdMap();
getPortletContext().setAttribute(Bridge.BRIDGE_PACKAGE_PREFIX + getPortletName() + "." +
Bridge.DEFAULT_VIEWID_MAP, defaultViewIdMap);
+
+ Class<? extends BridgeWriteBehindResponse> writeBehindResponse = getWriteBehindResponse();
+ if (writeBehindResponse != null)
+ getPortletContext().setAttribute(Bridge.BRIDGE_PACKAGE_PREFIX + getPortletName() + "." +
+ Bridge.WRITE_BEHIND_RESPONSE, writeBehindResponse);
BridgeEventHandler eventHandler = getBridgeEventHandler();
if (eventHandler != null)
@@ -515,6 +528,46 @@ public class GenericFacesPortlet extends
}
/**
+ * Returns an instantiated class that implements the <code>java.portlet.faces.BridgeWriteBehindResponse>/code>
+ * interface the bridge is supposed to use when dispatching render requests. This is provided
+ * when a portlet wants the JSP writeBehindBehavior and chooses to get this Faces implementation
+ * dependent behavior by using a Portlet 2.0 response wrapper.<br>
+ * Subclasses override to
+ * alter the default behavior. Default implementation returns value of the portlet init
+ * parameter: javax.portlet.faces.BridgeWriteBehindResponseClassName.
+ *
+ * @return a instantiated class that implements <code>java.portlet.faces.BridgeWriteBehindResponse>/code>
+ */
+
+ public Class<? extends BridgeWriteBehindResponse> getWriteBehindResponse() throws PortletException
+ {
+ Class<? extends BridgeWriteBehindResponse> writeBehindResponse = null;
+ String bridgeWriteBehindResponseClassName =
+ getPortletConfig().getInitParameter(BRIDGE_WRITE_BEHIND_RESPONSE_CLASS);
+
+ if (bridgeWriteBehindResponseClassName != null)
+ {
+ try
+ {
+ ClassLoader loader = Thread.currentThread().getContextClassLoader();
+ writeBehindResponse = (Class<? extends BridgeWriteBehindResponse>) loader.loadClass(bridgeWriteBehindResponseClassName);
+ }
+ catch (ClassNotFoundException cnfe)
+ {
+ throw new PortletException("Unable to load configured bridge writeBehindResponse: " + bridgeWriteBehindResponseClassName);
+ }
+ catch (ClassCastException cce)
+ {
+ this.getPortletContext().log("GenericFacesPortlet: WARNING - configured BridgeWriteBehindResponse isn't an instance of javax.portlet.faces.BridgeWriteBehindResponse.");
+ // continue on
+ }
+
+ }
+
+ return writeBehindResponse;
+ }
+
+ /**
* Returns the value of the portlet initialization parameter
* <code>javax.portlet.faces.autoDispatchEvents</code> if non-null or
* <code>true</code>, otherwise.
Modified: myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/component/PortletNamingContainerUIViewRoot.java
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/component/PortletNamingContainerUIViewRoot.java?rev=950308&r1=950307&r2=950308&view=diff
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/component/PortletNamingContainerUIViewRoot.java (original)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/api/src/main/java/javax/portlet/faces/component/PortletNamingContainerUIViewRoot.java Tue Jun 1 23:35:42 2010
@@ -35,14 +35,13 @@ public class PortletNamingContainerUIVie
//TODO: This should be regenerated each time this is modified. Can this be added to maven?
private static final long serialVersionUID = -4524288011655837711L;
- private static final String PORTLET_ENCODED_NAMESPACE_ID = Bridge.BRIDGE_PACKAGE_PREFIX + "PortletEncodedNamespaceId";
+ private static final String PORTLET_NAMESPACE_ID_PREFIX = "_jpfcpncuivr_";
public PortletNamingContainerUIViewRoot()
{
super();
- getAttributes().put(PORTLET_ENCODED_NAMESPACE_ID, Boolean.FALSE);
}
/**
@@ -56,10 +55,10 @@ public class PortletNamingContainerUIVie
{
if (BridgeUtil.isPortletRequest())
{
- // Some impls (Facelets don't set an id on the UIViewRoot) -- so do so now
- if (((Boolean) this.getAttributes().get(PORTLET_ENCODED_NAMESPACE_ID)).equals(Boolean.FALSE))
+ // Some impls (Facelets don't set an id on the UIViewRoot) -- Also handles the action case
+ if ((this.getId() == null || !this.getId().startsWith(PORTLET_NAMESPACE_ID_PREFIX)))
{
- setId(null); // setId has a default for this
+ setId(this.getId()); // setId can handle the null
}
return super.getContainerClientId(context);
}
@@ -76,10 +75,10 @@ public class PortletNamingContainerUIVie
if (BridgeUtil.isPortletRequest())
{
// Turns out that in Facelets the UIViewRoot doesn't seem to have its id set -- i.e. its null
- // So recognize null and change to ""
+ // So recognize null and change to a uniqueId
if (id == null)
{
- id = "";
+ id = createUniqueId();
}
// Turns out some Faces impls (the RI) , on restoreView, manually sets the id from
@@ -88,16 +87,11 @@ public class PortletNamingContainerUIVie
// set is using the already encoded (saved) value we could end up with a doubly
// encoded id until the restore overwrites. To avoid this -- first test if
// its already encoded and don't re-encode.
- Boolean encoded = Boolean.FALSE;
- ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
- String namespace = ec.encodeNamespace("");
- if (!id.startsWith(namespace))
+ if (!id.startsWith(PORTLET_NAMESPACE_ID_PREFIX))
{
- id = namespace + "_" + id;
+ ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
+ id = PORTLET_NAMESPACE_ID_PREFIX + ec.encodeNamespace("") + "_" + id;
}
- // now indicate that this id is encoded
- encoded = Boolean.TRUE;
- getAttributes().put(PORTLET_ENCODED_NAMESPACE_ID, encoded);
}
super.setId(id);
}
Modified: myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/pom.xml?rev=950308&r1=950307&r2=950308&view=diff
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/pom.xml (original)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/pom.xml Tue Jun 1 23:35:42 2010
@@ -1,195 +1,233 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <name>MyFaces Portlet Bridge Blank Project</name>
- <artifactId>portlet-bridge-blank</artifactId>
- <packaging>war</packaging>
-
- <parent>
- <groupId>org.apache.myfaces.portlet-bridge</groupId>
- <artifactId>portlet-bridge-examples</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <dependencies>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>javax.servlet.jsp</groupId>
- <artifactId>jsp-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>javax.portlet</groupId>
- <artifactId>portlet-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>portlet-bridge-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>${pom.groupId}</groupId>
- <artifactId>portlet-bridge-impl</artifactId>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-jdev-plugin</artifactId>
- <groupId>org.apache.myfaces.trinidadbuild</groupId>
- <configuration>
- <libraries>
- <library>JSP Runtime</library>
- </libraries>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <profiles>
- <!-- sets up the webapp for deployment to pluto "mvn clean install -Ppluto" -->
- <profile>
- <id>pluto</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.pluto</groupId>
- <artifactId>maven-pluto-plugin</artifactId>
- <version>1.1.4</version>
- <executions>
- <execution>
- <phase>generate-resources</phase>
- <goals>
- <goal>assemble</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
-
- <!-- To run jetty, issue "mvn clean -PjettyConfig jetty:run" -->
- <profile>
- <id>jettyConfig</id>
- <dependencies>
- <dependency>
- <groupId>com.bekk.boss</groupId>
- <artifactId>maven-jetty-pluto-embedded</artifactId>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.mortbay.jetty</groupId>
- <artifactId>maven-jetty-plugin</artifactId>
- <configuration>
- <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
- <webDefaultXml>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</webDefaultXml>
- <systemProperties>
- <systemProperty>
- <name>org.apache.pluto.embedded.portletId</name>
- <value>portlet-bridge-blank</value>
- </systemProperty>
- </systemProperties>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.pluto</groupId>
- <artifactId>maven-pluto-plugin</artifactId>
- <version>1.1.4</version>
- <executions>
- <execution>
- <phase>generate-resources</phase>
- <goals>
- <goal>assemble</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
-
- <!-- By default the war examples use myfaces! :) -->
- <profile>
- <id>myfaces</id>
- <activation>
- <property>
- <name>!jsf</name>
- </property>
- </activation>
- <dependencies>
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-api</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.myfaces.core</groupId>
- <artifactId>myfaces-impl</artifactId>
- </dependency>
- </dependencies>
- </profile>
-
- <!-- To use the examples using the Sun's JSF Reference Implementation: mvn clean install -Djsf=ri -->
- <profile>
- <id>jsfri</id>
- <activation>
- <property>
- <name>jsf</name>
- <value>ri</value>
- </property>
- </activation>
- <dependencies>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- </dependency>
- </dependencies>
- <properties>
- <jsf_implementation>JSF-RI</jsf_implementation>
- </properties>
- </profile>
-
- <profile>
- <id>jsfri-provided</id>
- <activation>
- <property>
- <name>jsf</name>
- <value>ri-provided</value>
- </property>
- </activation>
-
- <repositories>
- <repository>
- <id>java.net</id>
- <name>java.net Maven 1 Repository</name>
- <url>https://maven-repository.dev.java.net/nonav/repository</url>
- <layout>legacy</layout>
- </repository>
- </repositories>
- <dependencies>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>${jsf.version}</version>
- <scope>runtime</scope>
- </dependency>
- </dependencies>
- <properties>
- <jsf_implementation>JSF-RI</jsf_implementation>
- </properties>
- </profile>
- </profiles>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <name>MyFaces Portlet Bridge Blank Project</name>
+ <artifactId>portlet-bridge-blank</artifactId>
+ <packaging>war</packaging>
+
+ <parent>
+ <groupId>org.apache.myfaces.portlet-bridge</groupId>
+ <artifactId>portlet-bridge-examples</artifactId>
+ <version>2.0.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet.jsp</groupId>
+ <artifactId>jsp-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.portlet</groupId>
+ <artifactId>portlet-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>portlet-bridge-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>portlet-bridge-impl</artifactId>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jdev-plugin</artifactId>
+ <groupId>org.apache.myfaces.trinidadbuild</groupId>
+ <configuration>
+ <libraries>
+ <library>JSP Runtime</library>
+ </libraries>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <!-- sets up the webapp for deployment to pluto 2.0 "mvn clean install -Ppluto" -->
+ <profile>
+ <id>pluto</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.portals.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ <version>2.0.0</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>assemble</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+<!-- sets up the webapp for deployment to pluto 2.0 (this is included as its the command in 1.0 for building to 2 - i.e. backwards compat) "mvn clean install -Ppluto2" -->
+ <profile>
+ <id>pluto2</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.portals.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ <version>2.0.0</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>assemble</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- To run jetty, issue "mvn clean -PjettyConfig jetty:run" -->
+ <profile>
+ <id>jettyConfig</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.bekk.boss</groupId>
+ <artifactId>maven-jetty-pluto-embedded</artifactId>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ <webDefaultXml>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</webDefaultXml>
+ <systemProperties>
+ <systemProperty>
+ <name>org.apache.pluto.embedded.portletId</name>
+ <value>portlet-bridge-blank</value>
+ </systemProperty>
+ </systemProperties>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ <version>1.1.4</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>assemble</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- By default the war examples use myfaces! :) -->
+ <profile>
+ <id>myfaces</id>
+ <activation>
+ <property>
+ <name>!jsf</name>
+ </property>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.myfaces.core</groupId>
+ <artifactId>myfaces-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.myfaces.core</groupId>
+ <artifactId>myfaces-impl</artifactId>
+ </dependency>
+ </dependencies>
+ </profile>
+
+ <!-- To use the examples using the Sun's JSF Reference Implementation: mvn clean install -Djsf=ri -->
+ <profile>
+ <id>jsfri</id>
+ <activation>
+ <property>
+ <name>jsf</name>
+ <value>ri</value>
+ </property>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ </dependency>
+ </dependencies>
+ <properties>
+ <jsf_implementation>JSF-RI</jsf_implementation>
+ </properties>
+ </profile>
+
+ <profile>
+ <id>jsfri-provided</id>
+ <activation>
+ <property>
+ <name>jsf</name>
+ <value>ri-provided</value>
+ </property>
+ </activation>
+
+ <repositories>
+ <repository>
+ <id>java.net</id>
+ <name>java.net Maven 1 Repository</name>
+ <url>https://maven-repository.dev.java.net/nonav/repository</url>
+ <layout>legacy</layout>
+ </repository>
+ </repositories>
+ <dependencies>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-impl</artifactId>
+ <version>${jsf.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+ <properties>
+ <jsf_implementation>JSF-RI</jsf_implementation>
+ </properties>
+ </profile>
+ </profiles>
</project>
\ No newline at end of file
Modified: myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/src/main/webapp/WEB-INF/portlet.xml
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/src/main/webapp/WEB-INF/portlet.xml?rev=950308&r1=950307&r2=950308&view=diff
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/src/main/webapp/WEB-INF/portlet.xml (original)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/examples/blank/src/main/webapp/WEB-INF/portlet.xml Tue Jun 1 23:35:42 2010
@@ -24,9 +24,9 @@
id="BridgeDemo" version="2.0">
<portlet>
- <description lang="EN">MyFaces Portlet Bridge Tempate Portlet</description>
+ <description>MyFaces Portlet Bridge Tempate Portlet</description>
<portlet-name>portlet-bridge-blank</portlet-name>
- <display-name lang="EN">MyFaces Portlet Bridge Template</display-name>
+ <display-name>MyFaces Portlet Bridge Template</display-name>
<portlet-class>javax.portlet.faces.GenericFacesPortlet</portlet-class>
<init-param>
@@ -46,9 +46,7 @@
<supports>
<mime-type>text/html</mime-type>
- <portlet-mode>edit</portlet-mode>
<portlet-mode>view</portlet-mode>
- <portlet-mode>help</portlet-mode>
</supports>
<supported-locale>en</supported-locale>
Added: myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/pom.xml?rev=950308&view=auto
==============================================================================
--- myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/pom.xml (added)
+++ myfaces/portlet-bridge/core/trunk_2.0.x/examples/carstore/pom.xml Tue Jun 1 23:35:42 2010
@@ -0,0 +1,281 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <name>MyFaces Portlet Bridge CarStore Demo</name>
+ <artifactId>portlet-bridge-carstore</artifactId>
+ <packaging>war</packaging>
+
+ <parent>
+ <groupId>org.apache.myfaces.portlet-bridge</groupId>
+ <artifactId>portlet-bridge-examples</artifactId>
+ <version>2.0.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <!-- Blueprints -->
+ <dependency>
+ <groupId>com.sun.javaee.blueprints</groupId>
+ <artifactId>bp-ui-simple</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.servlet.jsp</groupId>
+ <artifactId>jsp-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>javax.portlet</groupId>
+ <artifactId>portlet-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>portlet-bridge-api</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>portlet-bridge-impl</artifactId>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-jdev-plugin</artifactId>
+ <groupId>org.apache.myfaces.trinidadbuild</groupId>
+ <configuration>
+ <libraries>
+ <library>JSP Runtime</library>
+ </libraries>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>pluto-assemble</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <configuration>
+ <warName>${pom.artifactId}-pluto-${pom.version}</warName>
+ <outputDirectory>${project.build.directory}/../../assembly/target/webapp</outputDirectory>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- sets up the webapp for deployment to pluto 2.0 "mvn clean install -Ppluto" -->
+ <profile>
+ <id>pluto</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.portals.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ <version>2.0.0</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>assemble</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+<!-- sets up the webapp for deployment to pluto 2.0 (this is included as its the command in 1.0 for building to 2 - i.e. backwards compat) "mvn clean install -Ppluto2" -->
+ <profile>
+ <id>pluto2</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.portals.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ <version>2.0.0</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>assemble</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <!-- To run jetty, issue "mvn clean -PjettyConfig jetty:run" -->
+ <profile>
+ <id>jettyConfig</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.bekk.boss</groupId>
+ <artifactId>maven-jetty-pluto-embedded</artifactId>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ <configuration>
+ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml>
+ <webDefaultXml>src/main/webapp/WEB-INF/jetty-pluto-web-default.xml</webDefaultXml>
+ <systemProperties>
+ <systemProperty>
+ <name>org.apache.pluto.embedded.portletIds</name>
+ <value>portlet-bridge-carstore</value>
+ </systemProperty>
+ </systemProperties>
+
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.pluto</groupId>
+ <artifactId>maven-pluto-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+
+ <!-- By default the war examples uses mojarra and packages for a nonjavaee environment (includes the Faces jars)! :) -->
+
+ <!-- If you are running in a nonJavaEE environment (i.e. Faces isn't already deployed) and hence need to have Mojarra packaged in the war: -->
+ <profile>
+ <id>mojarra-nonjavaee</id>
+ <activation>
+ <property>
+ <name>!jsf</name>
+ </property>
+ </activation>
+
+ <dependencies>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ <version>${mojarra.version}</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-impl</artifactId>
+ <version>${mojarra.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+ <properties>
+ <jsf_implementation>JSF-RI</jsf_implementation>
+ </properties>
+ </profile>
+
+ <!-- If you are running in a JavaEE environment (i.e. Faces is already deployed) and hence don't need to have Mojarra packaged in the war: -->
+ <!-- mvn install -Djsf=mojarra-javaee -->
+ <profile>
+ <id>mojarra-javaee</id>
+ <activation>
+ <property>
+ <name>jsf</name>
+ <value>mojarra-javaee</value>
+ </property>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ </dependency>
+ </dependencies>
+ <properties>
+ <jsf_implementation>JSF-RI</jsf_implementation>
+ </properties>
+ </profile>
+
+
+ <!-- To use this examples using the MyFacesImplementation: mvn clean install -Djsf=myfaces-javaee -->
+ <!-- Note: currently carstore doesn't work properly in a myfaces environment -->
+ <profile>
+ <id>myfaces-javaee</id>
+ <activation>
+ <property>
+ <name>jsf</name>
+ <value>myfaces-javaee</value>
+ </property>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.myfaces.core</groupId>
+ <artifactId>myfaces-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.myfaces.core</groupId>
+ <artifactId>myfaces-impl</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+
+
+
+ <!-- If you are running in a nonJavaEE environment (i.e. Faces isn't already deployed) and hence need to have MyFaces packaged in the war: -->
+ <!-- mvn install -Djsf=myfaces-nonjavaee -->
+ <!-- Note: currently carstore doesn't work properly in a myfaces environment -->
+ <profile>
+ <id>myfaces-nonjavaee</id>
+ <activation>
+ <property>
+ <name>jsf</name>
+ <value>myfaces-nonjavaee</value>
+ </property>
+ </activation>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.myfaces.core</groupId>
+ <artifactId>myfaces-api</artifactId>
+ <version>${myfaces.version}</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.myfaces.core</groupId>
+ <artifactId>myfaces-impl</artifactId>
+ <version>${myfaces.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+ </profiles>
+</project>