Hi Laurent,

Thanks again for your help,
-Alex

==========================================
copletinstancedata/portal.xml:

The calling coplet:

<coplet-instance-data id="news-summary-1"
name="standard">
  <coplet-data>news-summary</coplet-data>
</coplet-instance-data>

The coplet being called, requires news-id parameter
(no default):
<coplet-instance-data id="news-item-1"
name="standard">
  <coplet-data>news-item</coplet-data>
  <attribute>
    <name>news-id</name>
    <value
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xsi:type="java:java.lang.String"></value>
  </attribute>    
</coplet-instance-data>

======================================
portlets.xmap:

<map:match pattern="home/news-summary.portlet">
  <map:generate
src="cocoon://site/home/news-summary.resource"/>
  <map:transform
src="portal/styles/html/portlets/home/news-summary.xsl">
    <map:parameter name="use-request-parameters"
value="true"/>
  </map:transform>
  <map:act type="locale">
    <map:transform type="i18n">
      <map:parameter name="locale" value="{locale}"/>
    </map:transform>
  </map:act>          
  <map:transform type="portal-coplet" />          
  <map:serialize type="xml"/>
</map:match>


<map:match pattern="news/news-news-item.portlet">
  <map:aggregate element="module">
    <map:part
src="cocoon://site/content/news.processed.xml"/>
    <map:part
src="cocoon://site/content/family.processed.xml"/>
  </map:aggregate>
  <map:transform
src="portal/xslt/news/join-with-people.xsl"/>
  <map:transform src="portal/xslt/news/news-item.xsl">
    <map:parameter name="news-id"
value="{coplet:attributes/news-id}"/>
  </map:transform>
  <map:transform
src="portal/styles/html/portlets/home/news-summary.xsl"/>
  <map:act type="locale">
    <map:transform type="i18n">
      <map:parameter name="locale" value="{locale}"/>
    </map:transform>
  </map:act>          
  <map:transform type="portal-coplet" />          
  <map:serialize type="xml"/>
</map:match>

===============================================
news-summary.xsl

<cl:links>
  <cl:link layout="maintab" value="3"
path="aspectDatas/tab"/>
  <cl:link layout="newstab" value="2"
path="aspectDatas/tab"/>
  <cl:link coplet="news-item-1" value="[EMAIL PROTECTED]"
path="parameters/news-id"/>
  <cl:content>Read more</cl:content>
</cl:links>

============================================

--- Laurent Trillaud <[EMAIL PROTECTED]> wrote:
> Alex
> Can you give snippets of your
> copletinstancedata/portal.xml file and your
> sitemap.xmap?
> Laurent
> 
> > -----Message d'origine-----
> > De : Alex Romayev [mailto:[EMAIL PROTECTED]
> > Envoyé : mardi 20 janvier 2004 00:21
> > À : [EMAIL PROTECTED]
> > Objet : RE: [portal] Linking to portal pages
> > 
> > Laurent,
> > 
> > I think I'm almost there, however I'm getting an
> error
> > and I believe it is because I don't quite
> understand
> > your point #2 and making some mistake there.  The
> > error that I get is:
> > 
> > org.apache.cocoon.ProcessingException: Failed to
> > execute pipeline.:
> > org.apache.commons.jxpath.JXPathException:
> Exception
> > trying to set value with xpath parameters/news-id;
> > Cannot set property /parameters/news-id, path does
> not
> > match a changeable location.
> > 
> > Please see my comments below.
> > 
> > Thanks,
> > -Alex
> > 
> > 
> > --- Laurent Trillaud <[EMAIL PROTECTED]> wrote:
> > > Alex
> > > Yes, but it's a bad idea, because you haven't
> > > insurance about coplets
> > > synchronization, and you will not have the
> benefit
> > > of the history record of
> > > the portal.
> > > The good design is to use coplet attributes.
> > > 1. Declare an attributes in
> > > copletinstancedata/portal.xml
> > > <coplet-instance-data id="MyCoplet-1"
> > > name="standard">
> > > <coplet-data>MyCoplet</coplet-data>
> > > <attribute>
> > > <name>MyAttribute</name>
> > > <value
> > >
> >
>
xsi:type="java:java.lang.String">MyDefaultValue</value>
> > > </attribute>
> > > </coplet-instance-data>
> > 
> > OK, I did that -- my coplet instance is named
> > "news-item-1" and the attribute "news-id".  I also
> > noticed that the sample places the attributes in
> > coplet definitions rather than coplet instances,
> does
> > it matter?
> > 
> > > 2. Use the portal-coplet transformer to set the
> > > attribute
> > > <cl:links>
> > > <cl:link layout="maintab" value="1"
> > > path="aspectDatas/tab"/>
> > > <cl:link coplet="MyCoplet-1" value="MyValue"
> > > path="parameters/MyAttribute"/>
> > > <cl:content>My News Page</cl:content>
> > > </cl:links>
> > > It will produce another event on the href
> > > <a
> > >
> >
>
href="portal?portal-action=n&portal-event=m&portal-event=m+1>
> > > My News Page</a>
> > > Be careful, to access to the MyCoplet-1
> attributes
> > > this transformer need to
> > > be call by the MyCoplet itself and with the
> cocoon
> > > protocol.
> > 
> > I'm not sure what you mean.  In my case I have 2
> > coplet instances: news-list-1 and news-item-1. 
> Each
> > item in the news list needs to have a link to the
> > corresponding news item.  So I put the above code
> in
> > the news-list-1 coplet and used the
> coplet-transformer
> > to generate the ancor tag.
> > 
> > When I click on the generated link, I get the
> "path
> > does not match a changeable location" error.
> > 
> > If it's not the
> > > case use the portal action to 'load' it in
> memory.
> > > <map:act type="portal-object-model">
> > > <map:parameter name="portalName" value="portal"
> />
> > > <map:parameter name="CopletId"
> value="MyCoplet-1" />
> > > </map:act>
> > 
> > I think this is my case, since my news-list coplet
> > needs to call news-item coplet.  Where do I place
> > this?
> > 
> > > 3. use it
> > > Read value from the coplet input module. For
> example
> > > to use it with an xsl
> > > <map:match pattern="MyCoplet.html">
> > > <map:generate src="MyData.xml" />
> > > <map:transform src="xml2html.xsl">
> > > <map:parameter name="MyParameter"
> > > value="{coplet:attributes/MyAttribute}"/>
> > > </map:transform>
> > > <map:serialize />
> > > </map:match>
> > >
> > > Laurent Trillaud
> > >
> > >
> > > > -----Message d'origine-----
> > > > De : Alex Romayev [mailto:[EMAIL PROTECTED]
> > > > Envoyi : lundi 19 janvier 2004 15:31
> > > > @ : [EMAIL PROTECTED]
> > > > Objet : RE: [portal] Linking to portal pages
> > > >
> > > > Thanks Laurent -- that works great!
> > > >
> > > > Another question, is there a way to pass a
> request
> > > > parameter with it, so that the anchor is
> something
> > > > like:
> > > >
> > > > <a
> > > >
> > >
> >
>
href="portal?portal-action=n&portal-event=m&news-id=x>My>
> > > > News Page</a>
> > > >
> > > > Thanks,
> > > > -Alex
> > > >
> > > > --- Laurent Trillaud <[EMAIL PROTECTED]>
> wrote:
> > > > > Hi,
> > > > > Events in the new portal engine are very
> > > powerful
> > > > > but totally misdocumented.
> > > > > If you want a link to switch to a News tab
> in
> > > your
> > > > > portal you need to create
> > > > > an event to say to the maintab composite
> layout
> > > to
> > > > > switch to is second
> > > > > layout (0 based index) and send it to the
> > > portal.
> > > > > Hoppefully, the portal-coplet transformer
> will
> > > do it
> > > > > for you
> > > > > <cl:links>
> > > > > <cl:link layout="maintab" value="1"
> > > > > path="aspectDatas/tab"/>
> > > > > <cl:content>My News Page</cl:content>
> > > > > </cl:links>
> > > > > will be replace by
> > > > > <map:transform type="portal-coplet" />
> > > > > by an anchor
> > > > > <a
> > > href="portal?portal-action=n&portal-event=m>My
> > > > > News Page</a>
> > > > > where n and m are auto-incremented integer.
> > > > >
> > > > > If the link can't be compute inside the
> portal,
> > > you
> > > > > can use the bookmark
> > > > > feature of the portal . The sample include
> with
> > > > > cocoon use
> > > > > it(portal/resources/bookmarks.xml).
> > > > > Just write a link
> > > > > <a
> > > > >
> > > >
> > >
> >
>
href="http://myserver/myproject/portal/bookmark?showtab=1";>
> > > > > My News Page</a> and it will do the same
> thing.
> > > > >
> > > > > Laurent Trillaud
> > > > >
> > > > > > -----Message d'origine-----
> > > > > > De : Alex Romayev
> [mailto:[EMAIL PROTECTED]
> > > > > > Envoyi : vendredi 16 janvier 2004 23:20
> > > > > > @ : [EMAIL PROTECTED]
> > > > > > Objet : [portal] Linking to portal pages
> > > > > >
> > > > > > Hi,
> > > > > >
> > > > > > I am porting my site from old portal-fw to
> the
> > > new
> > > > > > portal engine.  I was able to port all the
> > > coplets
> > > > > and
> > > > > > pages with any problems, however, I got
> really
> > > > > stuck
> > > > > > on events.  I am clearly missing the point
> > > here,
> > > > > so
> > > > > > could someone at least point me in the
> right
> > > > > direction
> > > > > > (an example would be great!)?
> > > > > >
> > > > > > I need to create a links to my portal
> pages
> > > from
> > > > > > within coplet content.  For example, I
> used to
> > > > > have
> > > > > > News page, so I could use the following:
> > > > > >
> > > > > > <a href=portal/news>News</a>
> > > > > >
> > > > > > Now my News page is represented as a tab. 
> How
> > > > > would I
> > > > > > generate the right link to this page?
> > > > > >
> > > > > > Thanks,
> > > > > > -Alex
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > > > For additional commands, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > >
> >
>
---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > > For additional commands, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > >
> > > >
> > > >
> > > > =====
> > > > Alex Romayev
> > > > Software Architect
> > > > http://www.romayev.com
> > > > [EMAIL PROTECTED]
> > > >
> > > >
> > >
> >
>
---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > > For additional commands, e-mail:
> > > [EMAIL PROTECTED]
> > >
> > >
> > >
> > >
> >
>
---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > For additional commands, e-mail:
> > > [EMAIL PROTECTED]
> > >
> > 
> > 
> > =====
> > Alex Romayev
> > Software Architect
> > http://www.romayev.com
> > [EMAIL PROTECTED]
> > 
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> 
> 
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
> 


=====
Alex Romayev
Software Architect
http://www.romayev.com
[EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to