You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2005/10/24 16:30:28 UTC

svn commit: r328075 - in /cocoon/blocks: portal-sample/trunk/samples/profiles/copletdata/ portal-sample/trunk/samples/profiles/copletinstancedata/ portal/trunk/java/org/apache/cocoon/components/persistence/ portal/trunk/java/org/apache/cocoon/portal/co...

Author: cziegeler
Date: Mon Oct 24 07:30:15 2005
New Revision: 328075

URL: http://svn.apache.org/viewcvs?rev=328075&view=rev
Log:
Remove own reference handlers and use Castor mechanism

Removed:
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/util/CopletBaseDataReferenceFieldHandler.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/util/CopletDataReferenceFieldHandler.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/util/CopletInstanceDataReferenceFieldHandler.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/util/ReferenceFieldHandler.java
Modified:
    cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml
    cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal-user-anonymous.xml
    cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal.xml
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/components/persistence/CastorSourceConverter.java
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletbasedata.xml
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletinstancedata.xml
    cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/layout.xml

Modified: cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml (original)
+++ cocoon/blocks/portal-sample/trunk/samples/profiles/copletdata/portal.xml Mon Oct 24 07:30:15 2005
@@ -20,7 +20,7 @@
      + Different news coplets
      + Read content from a file - for offline presentation
      -->
-   <coplet-data id="Newsweek" name="standard">
+   <coplet-data id="Newsweek">
       <title>Newsweek</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -29,7 +29,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="NYTBusiness" name="standard">
+   <coplet-data id="NYTBusiness">
       <title>NYT Business</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -38,7 +38,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="BBCNews" name="standard">
+   <coplet-data id="BBCNews">
       <title>BBC News</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -47,7 +47,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="CNET News" name="standard">
+   <coplet-data id="CNET News">
       <title>CNET News</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -56,7 +56,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="CNET Business" name="standard">
+   <coplet-data id="CNET Business">
       <title>CNET Business News</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -65,7 +65,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="CSTNews" name="standard">
+   <coplet-data id="CSTNews">
       <title>Chicago Sunday Times</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -74,7 +74,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="CNNEurope" name="standard">
+   <coplet-data id="CNNEurope">
       <title>CNN Europe</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -83,7 +83,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="ML Weblog" name="standard">
+   <coplet-data id="ML Weblog">
       <title>ML's Weblog</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -92,7 +92,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="Weblog" name="standard">
+   <coplet-data id="Weblog">
       <title>Another Weblog</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -106,7 +106,7 @@
      + Try to read content from the internet. 
      + If the net is not available, use static file (for offline presentation)
      -->
-   <coplet-data id="CZ Weblog" name="standard">
+   <coplet-data id="CZ Weblog">
       <title>CZ's Weblog</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -126,7 +126,7 @@
    <!-- 
      + The portal introduction coplet 
      -->
-   <coplet-data id="Portal-Intro" name="standard">
+   <coplet-data id="Portal-Intro">
       <title>Introduction</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -138,7 +138,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Portal-Demo" name="standard">
+   <coplet-data id="Portal-Demo">
       <title>Introduction</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -154,7 +154,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Portal-Right" name="standard">
+   <coplet-data id="Portal-Right">
       <title>Right</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -166,7 +166,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Portal-Left" name="standard">
+   <coplet-data id="Portal-Left">
       <title>Left</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -178,7 +178,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Portal-Bottom" name="standard">
+   <coplet-data id="Portal-Bottom">
       <title>Bottom</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -194,7 +194,7 @@
    <!--
      +  The Gallery coplets
      -->
-   <coplet-data id="Gallery" name="standard">
+   <coplet-data id="Gallery">
       <title>Picture Gallery</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -218,7 +218,7 @@
          <value xsi:type="java:java.lang.String">coplets/gallery/images</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="GalleryViewer" name="standard">
+   <coplet-data id="GalleryViewer">
       <title>Gallery Viewer</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -234,7 +234,7 @@
    <!--
      +  The login coplet
      -->
-   <coplet-data id="Login" name="standard">
+   <coplet-data id="Login">
       <title>Login</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -251,7 +251,7 @@
      +  The basket coplets
      +  The uri's for these coplets have to be absolut, so you have to use cocoon://!
      -->
-   <coplet-data id="BasketContent" name="standard">
+   <coplet-data id="BasketContent">
       <title>Basket Item</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -259,7 +259,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/content</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketAdmin" name="standard">
+   <coplet-data id="BasketAdmin">
       <title>Basket Administration</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -267,7 +267,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/basket-admin</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Basket" name="standard">
+   <coplet-data id="Basket">
       <title>Basket</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -275,7 +275,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/basket</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Basket.admin" name="standard">
+   <coplet-data id="Basket.admin">
       <title>Basket</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -283,7 +283,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/basket.admin</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleStaticCoplet" name="standard">
+   <coplet-data id="BasketSampleStaticCoplet">
       <title>Static Coplet</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -295,7 +295,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/staticcoplet.add.preflow</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletWithAttribute" name="standard">
+   <coplet-data id="BasketSampleCopletWithAttribute">
       <title>Coplet with Attribute</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -307,7 +307,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/copletwithattr.add.preflow</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletWithInlineProcess" name="standard">
+   <coplet-data id="BasketSampleCopletWithInlineProcess">
       <title>Coplet with Inline Process</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -319,7 +319,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/copletwithinline.add.preflow</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletWithInputProcess" name="standard">
+   <coplet-data id="BasketSampleCopletWithInputProcess">
       <title>Coplet with Input Processing</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -343,7 +343,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/copletwithinput.add.flow</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletWithInputProcessShow" name="standard">
+   <coplet-data id="BasketSampleCopletWithInputProcessShow">
       <title>Show Input</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -355,7 +355,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/copletwithinputshow.changeTitle.preflow</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletWithApp" name="standard">
+   <coplet-data id="BasketSampleCopletWithApp">
       <title>Coplet with Application</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -379,7 +379,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/copletwithapp.add.flow</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletList" name="standard">
+   <coplet-data id="BasketSampleCopletList">
       <title>Coplet List</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -403,7 +403,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/basket/copletlist</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="BasketSampleCopletWithUpload" name="standard">
+   <coplet-data id="BasketSampleCopletWithUpload">
       <title>Coplet with Input Process</title>
       <coplet-base-data>URICoplet</coplet-base-data>
       <attribute>
@@ -420,7 +420,7 @@
    <!--
      +  JSR-168 portlets from the Pluto testsuite
      -->
-   <coplet-data id="Portlet1" name="standard">
+   <coplet-data id="Portlet1">
       <title>Portlet-Test 1</title>
       <coplet-base-data>Portlet</coplet-base-data>
       <attribute>
@@ -432,7 +432,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="Portlet2" name="standard">
+   <coplet-data id="Portlet2">
       <title>Portlet-Test 2</title>
       <coplet-base-data>Portlet</coplet-base-data>
       <attribute>
@@ -444,7 +444,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="TestPortlet1" name="standard">
+   <coplet-data id="TestPortlet1">
       <title>Portlet-Test</title>
       <coplet-base-data>Portlet</coplet-base-data>
       <attribute>
@@ -456,7 +456,7 @@
          <value xsi:type="java:java.lang.Boolean">true</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="CocoonPortlet" name="standard">
+   <coplet-data id="CocoonPortlet">
       <title>CocoonPortlet</title>
       <coplet-base-data>Portlet</coplet-base-data>
       <attribute>
@@ -474,7 +474,7 @@
      +  - the flow based calculator
      +  - and a forms sample
      -->
-   <coplet-data id="app-test-one" name="standard">
+   <coplet-data id="app-test-one">
       <title>Application Test</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -494,7 +494,7 @@
          <value xsi:type="java:java.lang.String">cocoon://samples/blocks/portal-sample/coplets/samples/form</value>
       </attribute>
    </coplet-data>
-   <coplet-data id="app-test-two" name="standard">
+   <coplet-data id="app-test-two">
       <title>Application Test</title>
       <coplet-base-data>CachingURICoplet</coplet-base-data>
       <attribute>
@@ -516,7 +516,7 @@
    </coplet-data>
 
    <!-- Example for the application coplet -->
-   <coplet-data id="Google" name="standard">
+   <coplet-data id="Google">
       <title>Application</title>
       <coplet-base-data>Application</coplet-base-data>
       <attribute>
@@ -530,7 +530,7 @@
    </coplet-data>
 
    <!-- Example for the wsrp portlet -->
-   <coplet-data id="wsrp-calc-portlet" name="standard">
+   <coplet-data id="wsrp-calc-portlet">
       <title>WSRP-Calc-Portlet</title>
       <coplet-base-data>WSRP</coplet-base-data>
       <attribute>
@@ -543,7 +543,7 @@
       </attribute>
    </coplet-data>
 
-   <coplet-data id="wsrp-test-portlet" name="standard">
+   <coplet-data id="wsrp-test-portlet">
       <title>WSRP-Test-Portlet</title>
       <coplet-base-data>WSRP</coplet-base-data>
       <attribute>

Modified: cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal-user-anonymous.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal-user-anonymous.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal-user-anonymous.xml (original)
+++ cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal-user-anonymous.xml Mon Oct 24 07:30:15 2005
@@ -16,19 +16,19 @@
 -->
 <!-- SVN $Id$ -->
 <coplets>
-   <coplet-instance-data id="Portal-Intro-1" name="standard">
+   <coplet-instance-data id="Portal-Intro-1">
       <coplet-data>Portal-Intro</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Right-1" name="standard">
+   <coplet-instance-data id="Portal-Right-1">
       <coplet-data>Portal-Right</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Left-1" name="standard">
+   <coplet-instance-data id="Portal-Left-1">
       <coplet-data>Portal-Left</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Bottom-1" name="standard">
+   <coplet-instance-data id="Portal-Bottom-1">
       <coplet-data>Portal-Bottom</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Login-1" name="standard">
+   <coplet-instance-data id="Login-1">
       <coplet-data>Login</coplet-data>
    </coplet-instance-data>
 </coplets>

Modified: cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal.xml (original)
+++ cocoon/blocks/portal-sample/trunk/samples/profiles/copletinstancedata/portal.xml Mon Oct 24 07:30:15 2005
@@ -15,190 +15,190 @@
   limitations under the License.
 -->
 <!-- SVN $Id$ -->
-<coplets>
-   <coplet-instance-data id="Newsweek-1" name="standard">
+<coplets xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+   <coplet-instance-data id="Newsweek-1">
       <coplet-data>Newsweek</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="NYTBusiness-1" name="standard">
+   <coplet-instance-data id="NYTBusiness-1">
       <coplet-data>NYTBusiness</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="BBCNews-1" name="standard">
+   <coplet-instance-data id="BBCNews-1">
       <coplet-data>BBCNews</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="CNET News-1" name="standard">
+   <coplet-instance-data id="CNET News-1">
       <coplet-data>CNET News</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="CNET Business-1" name="standard">
+   <coplet-instance-data id="CNET Business-1">
       <coplet-data>CNET Business</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="CSTNews-1" name="standard">
+   <coplet-instance-data id="CSTNews-1">
       <coplet-data>CSTNews</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="CNNEurope-1" name="standard">
+   <coplet-instance-data id="CNNEurope-1">
       <coplet-data>CNNEurope</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="ML Weblog-1" name="standard">
+   <coplet-instance-data id="ML Weblog-1">
       <coplet-data>ML Weblog</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="CZ Weblog-1" name="standard">
+   <coplet-instance-data id="CZ Weblog-1">
       <coplet-data>CZ Weblog</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="Weblog-1" name="standard">
+   <coplet-instance-data id="Weblog-1">
       <coplet-data>Weblog</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="Portal-Intro-1" name="standard">
+   <coplet-instance-data id="Portal-Intro-1">
       <coplet-data>Portal-Intro</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Right-1" name="standard">
+   <coplet-instance-data id="Portal-Right-1">
       <coplet-data>Portal-Right</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Left-1" name="standard">
+   <coplet-instance-data id="Portal-Left-1">
       <coplet-data>Portal-Left</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Bottom-1" name="standard">
+   <coplet-instance-data id="Portal-Bottom-1">
       <coplet-data>Portal-Bottom</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Portal-Demo-1" name="standard">
+   <coplet-instance-data id="Portal-Demo-1">
       <coplet-data>Portal-Demo</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="Gallery-Petstore" name="standard">
+   <coplet-instance-data id="Gallery-Petstore">
       <coplet-data>Gallery</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="GalleryViewer-1" name="standard">
+   <coplet-instance-data id="GalleryViewer-1">
       <coplet-data>GalleryViewer</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="Login-1" name="standard">
+   <coplet-instance-data id="Login-1">
       <coplet-data>Login</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="Portlet-1" name="standard">
+   <coplet-instance-data id="Portlet-1">
       <coplet-data>Portlet1</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="Portlet-2" name="standard">
+   <coplet-instance-data id="Portlet-2">
       <coplet-data>Portlet2</coplet-data>
    </coplet-instance-data>
 
    <!-- This is the basket sample
    -->
-   <coplet-instance-data id="basket" name="standard">
+   <coplet-instance-data id="basket">
       <coplet-data>Basket</coplet-data>
       <attribute>  <!-- which kinds are enabled for this user: briefcase, basker, folder? -->
          <name>basket:enabled-storages</name>
-         <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">briefcase,basket,folder</value>
+         <value xsi:type="java:java.lang.String">briefcase,basket,folder</value>
       </attribute>
    </coplet-instance-data>
 
-   <coplet-instance-data id="basket-document" name="standard">
+   <coplet-instance-data id="basket-document">
        <coplet-data>Basket</coplet-data>
       <attribute>
          <name>type</name>
-         <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">document</value>
+         <value xsi:type="java:java.lang.String">document</value>
       </attribute>       
    </coplet-instance-data>
-   <coplet-instance-data id="basket-request" name="standard">
+   <coplet-instance-data id="basket-request">
        <coplet-data>Basket</coplet-data>
       <attribute>
          <name>type</name>
-         <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">request</value>
+         <value xsi:type="java:java.lang.String">request</value>
       </attribute>       
    </coplet-instance-data>
-   <coplet-instance-data id="basket-result" name="standard">
+   <coplet-instance-data id="basket-result">
        <coplet-data>Basket</coplet-data>
       <attribute>
          <name>type</name>
-         <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">result</value>
+         <value xsi:type="java:java.lang.String">result</value>
       </attribute>       
    </coplet-instance-data>
-   <coplet-instance-data id="basket-notepad" name="standard">
+   <coplet-instance-data id="basket-notepad">
       <coplet-data>Basket</coplet-data>
       <attribute>
          <name>type</name>
-         <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">notepad</value>
+         <value xsi:type="java:java.lang.String">notepad</value>
       </attribute>       
    </coplet-instance-data>
-   <coplet-instance-data id="basket-folder" name="standard">
+   <coplet-instance-data id="basket-folder">
        <coplet-data>Basket</coplet-data>
       <attribute>
          <name>type</name>
-         <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">folder</value>
+         <value xsi:type="java:java.lang.String">folder</value>
       </attribute>       
    </coplet-instance-data>
 
-   <coplet-instance-data id="Basket.admin" name="standard">
+   <coplet-instance-data id="Basket.admin">
       <coplet-data>Basket.admin</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-content" name="standard">
+   <coplet-instance-data id="basket-content">
       <coplet-data>BasketContent</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="BasketAdmin" name="standard">
+   <coplet-instance-data id="BasketAdmin">
       <coplet-data>BasketAdmin</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-1" name="standard">
+   <coplet-instance-data id="basket-sample-1">
       <coplet-data>BasketSampleStaticCoplet</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-2" name="standard">
+   <coplet-instance-data id="basket-sample-2">
       <coplet-data>BasketSampleCopletWithAttribute</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-3" name="standard">
+   <coplet-instance-data id="basket-sample-3">
       <coplet-data>BasketSampleCopletWithInlineProcess</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-4" name="standard">
+   <coplet-instance-data id="basket-sample-4">
       <coplet-data>BasketSampleCopletWithInputProcess</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-5" name="standard">
+   <coplet-instance-data id="basket-sample-5">
       <coplet-data>BasketSampleCopletWithApp</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-6" name="standard">
+   <coplet-instance-data id="basket-sample-6">
       <coplet-data>BasketSampleCopletWithUpload</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-7" name="standard">
+   <coplet-instance-data id="basket-sample-7">
       <coplet-data>BasketSampleCopletWithInputProcessShow</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="basket-sample-8" name="standard">
+   <coplet-instance-data id="basket-sample-8">
       <coplet-data>BasketSampleCopletList</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="TestPortlet-1" name="standard">
+   <coplet-instance-data id="TestPortlet-1">
       <coplet-data>TestPortlet1</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="CocoonPortlet" name="standard">
+   <coplet-instance-data id="CocoonPortlet">
       <coplet-data>CocoonPortlet</coplet-data>
    </coplet-instance-data>
 
-   <coplet-instance-data id="app-test-1" name="standard">
+   <coplet-instance-data id="app-test-1">
       <coplet-data>app-test-one</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="app-test-2" name="standard">
+   <coplet-instance-data id="app-test-2">
       <coplet-data>app-test-one</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="app-test-3" name="standard">
+   <coplet-instance-data id="app-test-3">
       <coplet-data>app-test-two</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="app-test-4" name="standard">
+   <coplet-instance-data id="app-test-4">
       <coplet-data>app-test-two</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="Google-1" name="standard">
+   <coplet-instance-data id="Google-1">
       <coplet-data>Google</coplet-data>
    </coplet-instance-data>
 
    <!-- wsrp example -->
-   <coplet-instance-data id="WSRP-Calc-1" name="standard">
+   <coplet-instance-data id="WSRP-Calc-1">
       <coplet-data>wsrp-calc-portlet</coplet-data>
    </coplet-instance-data>
-   <coplet-instance-data id="WSRP-Test-1" name="standard">
+   <coplet-instance-data id="WSRP-Test-1">
       <coplet-data>wsrp-test-portlet</coplet-data>
    </coplet-instance-data>
 

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/components/persistence/CastorSourceConverter.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/components/persistence/CastorSourceConverter.java?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/components/persistence/CastorSourceConverter.java (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/components/persistence/CastorSourceConverter.java Mon Oct 24 07:30:15 2005
@@ -35,11 +35,11 @@
 import org.apache.avalon.framework.thread.ThreadSafe;
 import org.apache.cocoon.components.source.SourceUtil;
 import org.apache.cocoon.portal.profile.ProfileLS;
-import org.apache.cocoon.portal.util.ReferenceFieldHandler;
 import org.apache.excalibur.source.Source;
 import org.apache.excalibur.source.SourceResolver;
 import org.exolab.castor.mapping.Mapping;
 import org.exolab.castor.mapping.MappingException;
+import org.exolab.castor.xml.IDResolver;
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 import org.xml.sax.InputSource;
@@ -60,17 +60,21 @@
     extends AbstractLogEnabled
     implements Serviceable, Configurable, Initializable, ThreadSafe {
 
+    /** The role to lookup this component. */
     public static final String ROLE = CastorSourceConverter.class.getName();
 
-    private Map mappingSources = new HashMap();
-    private ServiceManager manager;
-    private Map mappings = new HashMap();
-    private boolean defaultSuppressXSIType;
-    private boolean defaultValidateUnmarshalling;
+    protected Map mappingSources = new HashMap();
+    protected ServiceManager manager;
+    protected Map mappings = new HashMap();
+    protected boolean defaultSuppressXSIType;
+    protected boolean defaultValidateUnmarshalling;
+
+    /** This object resolves the references between the different profile files. */
+    protected ReferenceResolver idResolver = new ReferenceResolver();
 
     public Object getObject(InputStream stream, Map parameters) throws ConverterException {
         try {
-            ReferenceFieldHandler.setObjectMap((Map)parameters.get(ProfileLS.PARAMETER_OBJECTMAP));
+            this.idResolver.setObjectMap((Map)parameters.get(ProfileLS.PARAMETER_OBJECTMAP));
             Unmarshaller unmarshaller = (Unmarshaller)((Object[])this.mappings.get(parameters.get(ProfileLS.PARAMETER_PROFILETYPE)))[1];
             Object result = unmarshaller.unmarshal(new InputSource(stream));
             stream.close();
@@ -78,7 +82,7 @@
         } catch (Exception e) {
             throw new ConverterException(e.getMessage(), e);
         } finally {
-            ReferenceFieldHandler.clearObjectMap();
+            this.idResolver.clearObjectMap();
         }
     }
 
@@ -155,6 +159,7 @@
                 try {
                     final Unmarshaller unmarshaller = new Unmarshaller(mapping);
                     unmarshaller.setValidation(this.defaultValidateUnmarshalling);
+                    unmarshaller.setIDResolver(this.idResolver);
                     this.mappings.put(name, new Object[] {mapping, unmarshaller});
                 } catch (Exception e) {
                     this.getLogger().debug("Unable to create unmarshaller for mapping: " + name, e);
@@ -166,6 +171,37 @@
                 resolver.release(source);
             }
             manager.release(resolver);
+        }
+    }
+
+    public final static class ReferenceResolver implements IDResolver {
+
+        /**
+         * Used to pass resolvable objects to the field handler.
+         */
+        private ThreadLocal threadLocalMap = new ThreadLocal();
+
+        public ReferenceResolver() {
+            // nothing to do
+        }
+
+        /**
+         * Sets the map used to pass resolvable objects to the field handler.
+         */
+        public void setObjectMap(Map objectMap) {
+            this.threadLocalMap.set(objectMap);
+        }
+
+        public void clearObjectMap() {
+            this.threadLocalMap.set(null);
+        }
+
+        /**
+         * @see org.exolab.castor.xml.IDResolver#resolve(java.lang.String)
+         */
+        public Object resolve(String refId) {
+            // TODO - Should we throw an exception if the reference is not available?
+            return ((Map)this.threadLocalMap.get()).get(refId);
         }
     }
 }

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletbasedata.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletbasedata.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletbasedata.xml (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletbasedata.xml Mon Oct 24 07:30:15 2005
@@ -28,7 +28,7 @@
     </field>
   </class>
 
-  <class name="org.apache.cocoon.portal.coplet.CopletBaseData">
+  <class name="org.apache.cocoon.portal.coplet.CopletBaseData" identity="id">
     <map-to xml="coplet-base-data" />
 
     <field name="id" type="java.lang.String" set-method="%1" get-method="getId">

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletdata.xml Mon Oct 24 07:30:15 2005
@@ -18,6 +18,12 @@
 <mapping>
   <description>Coplet data mapping file</description>
 
+  <class name="org.apache.cocoon.portal.coplet.CopletBaseData" identity="id">
+    <field name="id" type="java.lang.String" set-method="%1" get-method="getId">
+      <bind-xml name="id" node="attribute" />
+    </field>
+  </class>  
+
   <class name="org.apache.cocoon.portal.profile.impl.CopletDataManager">
     <map-to xml="coplets" />
 
@@ -27,7 +33,7 @@
     </field>
   </class>
 
-  <class name="org.apache.cocoon.portal.coplet.CopletData">
+  <class name="org.apache.cocoon.portal.coplet.CopletData" identity="id">
     <map-to xml="coplet-data" />
     
     <field name="id" type="java.lang.String" set-method="%1" get-method="getId">
@@ -46,8 +52,9 @@
       <bind-xml name="attribute"/>
     </field>
 
-    <field name="copletBaseData" type="java.lang.String"
-           handler="org.apache.cocoon.portal.util.CopletBaseDataReferenceFieldHandler"/>
+    <field name="copletBaseData">
+      <bind-xml name="coplet-base-data" reference="true"/>
+    </field>
   </class>
    
   <class name="org.exolab.castor.mapping.MapItem">

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletinstancedata.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletinstancedata.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletinstancedata.xml (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/coplet/copletinstancedata.xml Mon Oct 24 07:30:15 2005
@@ -18,6 +18,12 @@
 <mapping>
   <description>Coplet instance data mapping file</description>
 
+  <class name="org.apache.cocoon.portal.coplet.CopletData" identity="id">
+    <field name="id" type="java.lang.String" set-method="%1" get-method="getId">
+      <bind-xml name="id" node="attribute" />
+    </field>
+  </class>
+
   <class name="org.apache.cocoon.portal.pluto.om.common.PreferenceImpl">
     <field name="name" type="java.lang.String" required="true">
       <bind-xml name="name" node="element"/>
@@ -46,22 +52,30 @@
     </field>
   </class>
 
-  <class name="org.apache.cocoon.portal.coplet.CopletInstanceData">
+  <class name="org.apache.cocoon.portal.coplet.CopletInstanceData" identity="id">
     <map-to xml="coplet-instance-data"/>
+
     <field name="id" type="java.lang.String" set-method="%1" get-method="getId">
       <bind-xml name="id" node="attribute" />
     </field>
-    <field name="copletData" type="java.lang.String" handler="org.apache.cocoon.portal.util.CopletDataReferenceFieldHandler"/>
+
+    <field name="copletData">
+      <bind-xml name="coplet-data" reference="true"/>
+    </field>
+
     <field name="attributes" type="org.apache.cocoon.portal.util.AttributedMapItem" collection="collection"
            get-method="getCastorAttributes" set-method="addAttribute">
       <bind-xml name="attribute" node="element"/>
     </field>
+
     <field name="castorPreferences" type="org.apache.cocoon.portal.pluto.om.common.PreferenceSetImpl">
       <bind-xml name="preferences" node="element"/>
     </field>
+
     <field name="title" type="java.lang.String" get-method="getInstanceTitle" set-method="setTitle">
       <bind-xml name="title"/>
     </field>
+
     <field name="size">
       <bind-xml name="size"/>
     </field>

Modified: cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/layout.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/layout.xml?rev=328075&r1=328074&r2=328075&view=diff
==============================================================================
--- cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/layout.xml (original)
+++ cocoon/blocks/portal/trunk/java/org/apache/cocoon/portal/layout/layout.xml Mon Oct 24 07:30:15 2005
@@ -18,6 +18,12 @@
 <mapping>
   <description>Portalprofile mapping file</description>
 
+  <class name="org.apache.cocoon.portal.coplet.CopletInstanceData" identity="id">
+    <field name="id" type="java.lang.String" set-method="%1" get-method="getId">
+      <bind-xml name="id" node="attribute" />
+    </field>
+  </class>
+
   <class name="org.apache.cocoon.portal.layout.AbstractParameters">
     <field name="parameters" type="org.apache.cocoon.portal.pluto.om.common.ParameterImpl" collection="set"
       get-method="getCastorParameters" set-method="addParameter">
@@ -65,7 +71,7 @@
   </class>
 
   <class name="org.apache.cocoon.portal.layout.impl.FrameLayout"
-    extends="org.apache.cocoon.portal.layout.AbstractLayout">
+         extends="org.apache.cocoon.portal.layout.AbstractLayout">
     <map-to xml="frame-layout"/>
     <field name="source" type="java.lang.String"/>
   </class>
@@ -78,7 +84,7 @@
   </class>
 
   <class name="org.apache.cocoon.portal.layout.NamedItem"
-    extends="org.apache.cocoon.portal.layout.Item">
+         extends="org.apache.cocoon.portal.layout.Item">
     <map-to xml="named-item"/>
     <field name="name" type="java.lang.String">
       <bind-xml name="name" node="attribute"/>
@@ -105,11 +111,14 @@
     </field>
   </class>
 
-  <class name="org.apache.cocoon.portal.layout.impl.CopletLayout" auto-complete="false"
-    extends="org.apache.cocoon.portal.layout.AbstractLayout">
+  <class name="org.apache.cocoon.portal.layout.impl.CopletLayout"
+         auto-complete="false"
+         extends="org.apache.cocoon.portal.layout.AbstractLayout">
     <map-to xml="coplet-layout"/>
 
-    <field name="copletInstanceData" type="java.lang.String" handler="org.apache.cocoon.portal.util.CopletInstanceDataReferenceFieldHandler"/>
+    <field name="copletInstanceData">
+      <bind-xml name="coplet-instance-data" reference="true"/>
+    </field>
   </class>
 
 </mapping>