2009-07-30 5 views
0

strutsポートレット・ブリッジを使用してかなり基本的なポートレットを作成し、それを配備することで、ポートレット内のナビゲーションが正常に機能しているようですが、ポータル内の別のポートレットのリンクをクリックすると、既存の状態を再描画するのではなく、portlet.xmlを使用します。私は間違って何をしていますか?マイportlet.xml別のポートレットが使用されている場合、ストラットベースのポートレットにそのビューを記憶させることはできますか?

は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?> 

<config> 
    <render-context> 
    <attribute name="errors"/> 
    <attribute name="message" keep="true"/> 
    <attribute prefix="com.perceptive" keep="true"/> 
    </render-context> 
    <portlet-url-type default="render"> 
    <render path="/test/help.do"/> 
    <render path="/test/start.do"/> 
    <render path="/test/preferences.do"/> 
    <render path="/test/tableTest.do"/> 
    <render path="/test/displayTagTest.do"/> 
    <render path="/test/lookupTest.do"/> 
    <render path="/test/lookupTestSave.do"/> 
    </portlet-url-type> 
</config> 

PSは、私はすでにLiferayのフォーラムでこれを求めてきましたが、ご希望にここにも求めています:

<?xml version="1.0"?> 

<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" version="2.0" 
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"> 
    <portlet> 
    <portlet-name>test</portlet-name> 
    <display-name>Test</display-name> 
    <portlet-class>com.perceptive.ctms.test.portlet.TestPortlet</portlet-class> 

    <init-param> 
     <name>ServletContextProvider</name> 
     <value>com.liferay.util.bridges.struts.LiferayServletContextProviderWrapper</value> 
    </init-param> 
    <init-param> 
     <name>StrutsPortletConfigLocation</name> 
     <value>/WEB-INF/struts-portlet-config.xml</value> 
    </init-param> 
    <init-param> 
     <name>HelpPage</name> 
     <value>/portlet_action/test/help</value> 
    </init-param> 
    <init-param> 
     <name>ViewPage</name> 
     <value>/portlet_action/test/start</value> 
    </init-param> 
    <init-param> 
     <name>EditPage</name> 
     <value>/portlet_action/test/preferences</value> 
    </init-param> 

    <expiration-cache>0</expiration-cache> 
    <supports> 
     <mime-type>text/html</mime-type> 
     <portlet-mode>view</portlet-mode> 
     <portlet-mode>edit</portlet-mode> 
     <portlet-mode>help</portlet-mode> 
    </supports> 
    <portlet-info> 
     <title>Test</title> 
     <short-title>Test</short-title> 
     <keywords>Test</keywords> 
    </portlet-info> 
    </portlet> 

    <filter> 
    <filter-name>AuthenticationFilter</filter-name> 
    <filter-class>com.perceptive.ctms.framework.portlet.filter.AuthenticationFilter</filter-class> 
    <lifecycle>RENDER_PHASE</lifecycle> 
    <lifecycle>ACTION_PHASE</lifecycle> 
    </filter> 

    <filter-mapping> 
    <filter-name>AuthenticationFilter</filter-name> 
    <portlet-name>test</portlet-name> 
    </filter-mapping> 
</portlet-app> 

struts-portlet-config.xmlですクイックアンサー。それが期限切れにならないことを意味する

<expiration-cache>-1</expiration-cache> 

<expiration-cache>0</expiration-cache> 

ポートレットのキャッシュされたバージョンがすぐに期限切れになる意味:portlet.xml

答えて

2

はラインを変更してみてください。からportlet-app_2_0.xsd

<annotation> 
    <documentation> 
     Expiration-time defines the time in seconds after which the portlet output expires. 
     -1 indicates that the output never expires. 
     Used in: portlet 
    </documentation> 
</annotation> 
+0

Aargh!私は答えが顔の中で私を見つめていたことを知っていた –

関連する問題