portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gonzalo Aguilar Delgado <gagui...@aguilardelgado.com>
Subject Re: svn commit: r884670 - in /portals/jetspeed-2/portal/trunk: ./ applications/jetspeed/src/main/resources/ applications/jetspeed/src/main/webapp/WEB-INF/ components/jetspeed-portal/ components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/val...
Date Fri, 27 Nov 2009 13:10:52 GMT
Hi Woonsan, 

Ok. I will try to implement this into the toolbox and add a new service
to get all categories. So they will 
be updated dynamically when new apps are added. This also will help me
to dive into JAX-RS services.

I also recommend to set default category in toolbox to "News" or some
other because it will get messy
when lot's of portlets are in place. Can I do it also?

Tnx

El vie, 27-11-2009 a las 04:59 -0800, Woonsan Ko escribió:

> Hi Gonzalo,
> 
> Yes, I'm implementing JAX-RS services which possibly replaces the old ajax apis. It should be regarded as a prototype until other committers get satisfied with this new one.
> However, I'd like to see this new JAX-RS service used in the toolbox portlet. It would help evaluation. 
> If you are interested in this, please dive into it. I will really appreciate it. :-)
> 
> By the way, many Jetspeed developers prefer json to xml, so I think we'd better use json marshaling instead of xml marshaling in toolbox portlet.
> Also, I found a problem to fix. It should be more consistently mappable between xml and json marshaling. I hope to fix these today. I will update the status in the commit messages.
> FYI, you can use json marshaling by adding "?_type=json" parameter as follows:
> 
> (1) GET all PAs: http://localhost:8080/jetspeed/services/portletregistry/application/%20?_type=json
> (2) GET demo PA: http://localhost:8080/jetspeed/services/portletregistry/application/demo/?_type=json
> (3) GET all PDs: http://localhost:8080/jetspeed/services/portletregistry/definition/%20?_type=json
> (4) GET all PDs of demo PA: http://localhost:8080/jetspeed/services/portletregistry/definition/demo/?_type=json
> (5) GET demo::PickANumberPortlet PD: http://localhost:8080/jetspeed/services/portletregistry/definition/demo::PickANumberPortlet/?_type=json
> 
> Apache CXF allows to change marshaling types by Accept header as well, but I think this is very handy.
> 
> Kind regards,
> 
> Woonsan
> 
> 
> 
> ----- Original Message ----
> From: Gonzalo Aguilar Delgado <gaguilar@aguilardelgado.com>
> To: Jetspeed Developers List <jetspeed-dev@portals.apache.org>
> Sent: Fri, November 27, 2009 1:26:28 PM
> Subject: Re: svn commit: r884670 - in /portals/jetspeed-2/portal/trunk: ./ applications/jetspeed/src/main/resources/ applications/jetspeed/src/main/webapp/WEB-INF/ components/jetspeed-portal/ components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/val...
> 
> Woonsan, 
> 
> Is this a new type of service implementation? Will Jetspeed go in that
> direction?
> 
> Do you want me to put this into the toolbox?
> 
> Tnx
> 
> 
> El jue, 26-11-2009 a las 19:21 +0000, woonsan@apache.org escribió:
> 
> > Author: woonsan
> > Date: Thu Nov 26 19:21:39 2009
> > New Revision: 884670
> > 
> > URL: http://svn.apache.org/viewvc?rev=884670&view=rev
> > Log:
> > JS2-1087: Adding initial JAX-RS support as prototype
> > The following urls are testable:
> > 
> > (1) GET all PAs: http://localhost:8080/jetspeed/services/portletregistry/application/%20
> > (2) GET demo PA: http://localhost:8080/jetspeed/services/portletregistry/application/demo/
> > (3) GET all PDs: http://localhost:8080/jetspeed/services/portletregistry/definition/%20
> > (4) GET all PDs of demo PA: http://localhost:8080/jetspeed/services/portletregistry/definition/demo/
> > (5) GET demo::PickANumberPortlet PD: http://localhost:8080/jetspeed/services/portletregistry/definition/demo::PickANumberPortlet/
> > 
> > TODO: Remove '%20' in the urls to indicate '*', test with json client and integrate it with toolbox portlet.
> > 
> > Added:
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java   (with props)
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java   (with props)
> >     portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml   (with props)
> > Modified:
> >     portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/resources/log4j.xml
> >     portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/web.xml
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/pom.xml
> >     portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/   (props changed)
> >     portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/pipelines.xml
> >     portals/jetspeed-2/portal/trunk/pom.xml
> > 
> > Modified: portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/resources/log4j.xml
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/resources/log4j.xml?rev=884670&r1=884669&r2=884670&view=diff
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/resources/log4j.xml (original)
> > +++ portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/resources/log4j.xml Thu Nov 26 19:21:39 2009
> > @@ -94,7 +94,15 @@
> >        <param name="ConversionPattern" value="%d{dd.MM.yyyy HH:mm:ss} %-5p [%C.%M():%L] %m%n"/>
> >      </layout>
> >    </appender>
> > -
> > +  
> > +  <!-- cxf appender -->
> > +  <appender name="cxf" class="org.apache.log4j.FileAppender">
> > +    <param name="File" value="${org.apache.portals.logdir}/jetspeed-cxf.log"/>
> > +    <layout class="org.apache.log4j.PatternLayout">
> > +      <param name="ConversionPattern" value="%d{dd.MM.yyyy HH:mm:ss} %-5p [%C.%M():%L] %m%n"/>
> > +    </layout>
> > +  </appender>
> > +  
> >    <!-- ====================================================================== -->
> >    <!-- L O G G E R S                                                          -->
> >    <!-- ====================================================================== -->
> > @@ -134,6 +142,11 @@
> >      <appender-ref ref="ojb"/>
> >    </category>
> >    
> > +  <category additivity="false" name="org.apache.cxf">
> > +    <level value="ERROR"/>
> > +    <appender-ref ref="cxf"/>
> > +  </category>
> > +  
> >    <category additivity="false" name="scheduler">
> >      <level value="ERROR"/>
> >      <appender-ref ref="scheduler"/>
> > 
> > Modified: portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/web.xml
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/web.xml?rev=884670&r1=884669&r2=884670&view=diff
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/web.xml (original)
> > +++ portals/jetspeed-2/portal/trunk/applications/jetspeed/src/main/webapp/WEB-INF/web.xml Thu Nov 26 19:21:39 2009
> > @@ -180,6 +180,10 @@
> >    </servlet-mapping>
> >    <servlet-mapping>
> >      <servlet-name>jetspeed</servlet-name>
> > +    <url-pattern>/services/*</url-pattern>
> > +  </servlet-mapping>
> > +  <servlet-mapping>
> > +    <servlet-name>jetspeed</servlet-name>
> >      <url-pattern>/desktop/*</url-pattern>
> >    </servlet-mapping>
> >    <servlet-mapping>
> > 
> > Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/pom.xml
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/pom.xml?rev=884670&r1=884669&r2=884670&view=diff
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/pom.xml (original)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/pom.xml Thu Nov 26 19:21:39 2009
> > @@ -165,6 +165,15 @@
> >        <groupId>org.springframework</groupId>
> >        <artifactId>spring-context-support</artifactId>
> >      </dependency>
> > +    <dependency>
> > +      <groupId>javax.ws.rs</groupId>
> > +      <artifactId>jsr311-api</artifactId>
> > +    </dependency>
> > +    <dependency>
> > +      <groupId>org.apache.cxf</groupId>
> > +      <artifactId>cxf-rt-frontend-jaxrs</artifactId>
> > +      <scope>runtime</scope>
> > +    </dependency>
> >  
> >      <!-- Test Dependencies -->
> >      <dependency>
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,125 @@
> > +/*
> > + * 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 org.apache.jetspeed.pipeline.valve.impl;
> > +
> > +import java.util.Collections;
> > +import java.util.Enumeration;
> > +import java.util.Map;
> > +
> > +import javax.servlet.ServletConfig;
> > +import javax.servlet.ServletContext;
> > +import javax.servlet.http.HttpServlet;
> > +
> > +import org.apache.jetspeed.pipeline.PipelineException;
> > +import org.apache.jetspeed.pipeline.valve.AbstractValve;
> > +import org.apache.jetspeed.pipeline.valve.ValveContext;
> > +import org.apache.jetspeed.request.RequestContext;
> > +
> > +/**
> > + * ServletDelegatingValve
> > + * 
> > + * @version $Id$
> > + */
> > +public class ServletDelegatingValve extends AbstractValve
> > +{
> > +    protected HttpServlet servlet;
> > +    protected ServletConfig config;
> > +
> > +    public ServletDelegatingValve(HttpServlet servlet, ServletConfig config)
> > +    {
> > +        this.servlet = servlet;
> > +        this.config = config;
> > +    }
> > +    
> > +    @Override
> > +    public void initialize() throws PipelineException
> > +    {
> > +        try
> > +        {
> > +            servlet.init(config);
> > +        }
> > +        catch (Exception e)
> > +        {
> > +            throw new PipelineException(e);
> > +        }
> > +    }
> > +
> > +    public void destroy()
> > +    {
> > +        servlet.destroy();
> > +    }
> > +
> > +    @Override
> > +    public void invoke(RequestContext request, ValveContext context) throws PipelineException
> > +    {
> > +        try
> > +        {
> > +            servlet.service(request.getRequest(), request.getResponse());
> > +        }
> > +        catch (Exception e)
> > +        {
> > +            throw new PipelineException(e);
> > +        }
> > +        
> > +        // continue
> > +        context.invokeNext(request);
> > +    }
> > +
> > +    public static class ServletConfigImpl implements ServletConfig
> > +    {
> > +        protected String servletName;
> > +        protected Map<String, String> initParams;
> > +        protected ServletContext servletContext;
> > +
> > +        public ServletConfigImpl(String servletName, Map<String, String> initParams)
> > +        {
> > +            this(servletName, initParams, null);
> > +        }
> > +
> > +        public ServletConfigImpl(String servletName, Map<String, String> initParams, ServletContext servletContext)
> > +        {
> > +            this.servletName = servletName;
> > +            this.initParams = initParams;
> > +            this.servletContext = servletContext;
> > +        }
> > +
> > +        public String getInitParameter(String paramName)
> > +        {
> > +            return initParams.get(paramName);
> > +        }
> > +
> > +        public Enumeration getInitParameterNames()
> > +        {
> > +            return Collections.enumeration(initParams.keySet());
> > +        }
> > +
> > +        public ServletContext getServletContext()
> > +        {
> > +            return servletContext;
> > +        }
> > +
> > +        public void setServletContext(ServletContext servletContext)
> > +        {
> > +            this.servletContext = servletContext;
> > +        }
> > +
> > +        public String getServletName()
> > +        {
> > +            return servletName;
> > +        }
> > +    }
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/pipeline/valve/impl/ServletDelegatingValve.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/
> > ------------------------------------------------------------------------------
> > --- svn:ignore (original)
> > +++ svn:ignore Thu Nov 26 19:21:39 2009
> > @@ -1,2 +1,2 @@
> > -target
> > +target
> >  surefire*.properties
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,87 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.Locale;
> > +
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.Description;
> > +
> > +/**
> > + * DescriptionBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="description")
> > +public class DescriptionBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String description;
> > +    private String lang;
> > +    private String localeString;
> > +
> > +    public DescriptionBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public DescriptionBean(final Description description)
> > +    {
> > +        this.description = description.getDescription();
> > +        lang = description.getLang();
> > +        
> > +        Locale locale = description.getLocale();
> > +        
> > +        if (locale != null)
> > +        {
> > +            localeString = locale.toString();
> > +        }
> > +    }
> > +
> > +    public String getDescription()
> > +    {
> > +        return description;
> > +    }
> > +
> > +    public void setDescription(String description)
> > +    {
> > +        this.description = description;
> > +    }
> > +
> > +    public String getLang()
> > +    {
> > +        return lang;
> > +    }
> > +
> > +    public void setLang(String lang)
> > +    {
> > +        this.lang = lang;
> > +    }
> > +
> > +    public String getLocaleString()
> > +    {
> > +        return localeString;
> > +    }
> > +
> > +    public void setLocaleString(String localeString)
> > +    {
> > +        this.localeString = localeString;
> > +    }
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DescriptionBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,88 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.Locale;
> > +
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.DisplayName;
> > +
> > +/**
> > + * DisplayNameBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="displayName")
> > +public class DisplayNameBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String displayName;
> > +    private String lang;
> > +    private String localeString;
> > +
> > +    public DisplayNameBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public DisplayNameBean(final DisplayName displayName)
> > +    {
> > +        this.displayName = displayName.getDisplayName();
> > +        lang = displayName.getLang();
> > +        
> > +        Locale locale = displayName.getLocale();
> > +        
> > +        if (locale != null)
> > +        {
> > +            localeString = locale.toString();
> > +        }
> > +    }
> > +
> > +    public String getDisplayName()
> > +    {
> > +        return displayName;
> > +    }
> > +
> > +    public void setDisplayName(String displayName)
> > +    {
> > +        this.displayName = displayName;
> > +    }
> > +
> > +    public String getLang()
> > +    {
> > +        return lang;
> > +    }
> > +
> > +    public void setLang(String lang)
> > +    {
> > +        this.lang = lang;
> > +    }
> > +
> > +    public String getLocaleString()
> > +    {
> > +        return localeString;
> > +    }
> > +
> > +    public void setLocaleString(String localeString)
> > +    {
> > +        this.localeString = localeString;
> > +    }
> > +    
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/DisplayNameBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,98 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.ArrayList;
> > +import java.util.Collection;
> > +
> > +import javax.xml.bind.annotation.XmlElement;
> > +import javax.xml.bind.annotation.XmlElementWrapper;
> > +import javax.xml.bind.annotation.XmlElements;
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.Description;
> > +import org.apache.jetspeed.om.portlet.InitParam;
> > +
> > +/**
> > + * InitParamBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="initParam")
> > +public class InitParamBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String paramName;
> > +    private String paramValue;
> > +    private Collection<DescriptionBean> descriptionBeans;
> > +    
> > +    public InitParamBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public InitParamBean(final InitParam initParam)
> > +    {
> > +        paramName = initParam.getParamName();
> > +        paramValue = initParam.getParamValue();
> > +        
> > +        ArrayList<DescriptionBean> descriptionBeanList = new ArrayList<DescriptionBean>();
> > +        
> > +        for (Description description : initParam.getDescriptions())
> > +        {
> > +            descriptionBeanList.add(new DescriptionBean(description));
> > +        }
> > +        
> > +        descriptionBeans = descriptionBeanList;
> > +    }
> > +
> > +    public String getParamName()
> > +    {
> > +        return paramName;
> > +    }
> > +
> > +    public void setParamName(String paramName)
> > +    {
> > +        this.paramName = paramName;
> > +    }
> > +
> > +    public String getParamValue()
> > +    {
> > +        return paramValue;
> > +    }
> > +
> > +    public void setParamValue(String paramValue)
> > +    {
> > +        this.paramValue = paramValue;
> > +    }
> > +    
> > +    @XmlElementWrapper(name="descriptions")
> > +    @XmlElements(@XmlElement(name="description"))
> > +    public Collection<DescriptionBean> getDescriptionBeans()
> > +    {
> > +        return descriptionBeans;
> > +    }
> > +
> > +    public void setDescriptionBeans(Collection<DescriptionBean> descriptionBeans)
> > +    {
> > +        this.descriptionBeans = descriptionBeans;
> > +    }
> > +    
> > +    
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/InitParamBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,64 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.util.Locale;
> > +
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.Language;
> > +
> > +/**
> > + * LanguageBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="language")
> > +public class LanguageBean extends PortletInfoBean
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String localeString;
> > +    
> > +    public LanguageBean()
> > +    {
> > +        super();
> > +    }
> > +    
> > +    public LanguageBean(final Language language)
> > +    {
> > +        super(language);
> > +        
> > +        Locale locale = language.getLocale();
> > +        
> > +        if (locale != null)
> > +        {
> > +            localeString = locale.toString();
> > +        }
> > +    }
> > +    
> > +    public String getLocaleString()
> > +    {
> > +        return localeString;
> > +    }
> > +
> > +    public void setLocaleString(String localeString)
> > +    {
> > +        this.localeString = localeString;
> > +    }
> > +
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/LanguageBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,164 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.ArrayList;
> > +import java.util.Collection;
> > +
> > +import javax.xml.bind.annotation.XmlElement;
> > +import javax.xml.bind.annotation.XmlElementWrapper;
> > +import javax.xml.bind.annotation.XmlElements;
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.Description;
> > +import org.apache.jetspeed.om.portlet.DisplayName;
> > +import org.apache.jetspeed.om.portlet.PortletApplication;
> > +
> > +/**
> > + * PortletApplicationBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="application")
> > +public class PortletApplicationBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String name;
> > +    private String contextPath;
> > +    private String defaultNamespace;
> > +    private int applicationType;
> > +    private long checksum;
> > +    private long revision;
> > +    private Collection<DisplayNameBean> displayNameBeans;
> > +    private Collection<DescriptionBean> descriptionBeans;
> > +    
> > +    public PortletApplicationBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public PortletApplicationBean(final PortletApplication portletApplication)
> > +    {
> > +        name = portletApplication.getName();
> > +        contextPath = portletApplication.getContextPath();
> > +        defaultNamespace = portletApplication.getDefaultNamespace();
> > +        applicationType = portletApplication.getApplicationType();
> > +        checksum = portletApplication.getChecksum();
> > +        revision = portletApplication.getRevision();
> > +        
> > +        ArrayList<DisplayNameBean> displayNameBeanList = new ArrayList<DisplayNameBean>();
> > +        for (DisplayName displayName : portletApplication.getDisplayNames())
> > +        {
> > +            displayNameBeanList.add(new DisplayNameBean(displayName));
> > +        }
> > +        displayNameBeans = displayNameBeanList;
> > +        
> > +        ArrayList<DescriptionBean> descriptionBeanList = new ArrayList<DescriptionBean>();
> > +        for (Description description : portletApplication.getDescriptions())
> > +        {
> > +            descriptionBeanList.add(new DescriptionBean(description));
> > +        }
> > +        descriptionBeans = descriptionBeanList;
> > +    }
> > +
> > +    public String getName()
> > +    {
> > +        return name;
> > +    }
> > +
> > +    public void setName(String name)
> > +    {
> > +        this.name = name;
> > +    }
> > +
> > +    public String getContextPath()
> > +    {
> > +        return contextPath;
> > +    }
> > +
> > +    public void setContextPath(String contextPath)
> > +    {
> > +        this.contextPath = contextPath;
> > +    }
> > +
> > +    public String getDefaultNamespace()
> > +    {
> > +        return defaultNamespace;
> > +    }
> > +
> > +    public void setDefaultNamespace(String defaultNamespace)
> > +    {
> > +        this.defaultNamespace = defaultNamespace;
> > +    }
> > +
> > +    public int getApplicationType()
> > +    {
> > +        return applicationType;
> > +    }
> > +
> > +    public void setApplicationType(int applicationType)
> > +    {
> > +        this.applicationType = applicationType;
> > +    }
> > +
> > +    public long getChecksum()
> > +    {
> > +        return checksum;
> > +    }
> > +
> > +    public void setChecksum(long checksum)
> > +    {
> > +        this.checksum = checksum;
> > +    }
> > +
> > +    public long getRevision()
> > +    {
> > +        return revision;
> > +    }
> > +
> > +    public void setRevision(long revision)
> > +    {
> > +        this.revision = revision;
> > +    }
> > +
> > +    @XmlElementWrapper(name="displayNames")
> > +    @XmlElements(@XmlElement(name="displayName"))
> > +    public Collection<DisplayNameBean> getDisplayNameBeans()
> > +    {
> > +        return displayNameBeans;
> > +    }
> > +
> > +    public void setDisplayNameBeans(Collection<DisplayNameBean> displayNameBeans)
> > +    {
> > +        this.displayNameBeans = displayNameBeans;
> > +    }
> > +
> > +    @XmlElementWrapper(name="descriptions")
> > +    @XmlElements(@XmlElement(name="description"))
> > +    public Collection<DescriptionBean> getDescriptionBeans()
> > +    {
> > +        return descriptionBeans;
> > +    }
> > +
> > +    public void setDescriptionBeans(Collection<DescriptionBean> descriptionBeans)
> > +    {
> > +        this.descriptionBeans = descriptionBeans;
> > +    }
> > +    
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,53 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.Collection;
> > +
> > +import javax.xml.bind.annotation.XmlElement;
> > +import javax.xml.bind.annotation.XmlElements;
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +/**
> > + * PortletApplicationBeans
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="applications")
> > +public class PortletApplicationBeans implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private Collection<PortletApplicationBean> portletApplicationBeans;
> > +    
> > +    public PortletApplicationBeans()
> > +    {
> > +        
> > +    }
> > +    
> > +    @XmlElements(@XmlElement(name="application"))
> > +    public Collection<PortletApplicationBean> getPortletApplicationBeans()
> > +    {
> > +        return portletApplicationBeans;
> > +    }
> > +    
> > +    public void setPortletApplicationBeans(Collection<PortletApplicationBean> portletApplicationBeans)
> > +    {
> > +        this.portletApplicationBeans = portletApplicationBeans;
> > +    }
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletApplicationBeans.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,171 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.ArrayList;
> > +import java.util.Collection;
> > +
> > +import javax.xml.bind.annotation.XmlElement;
> > +import javax.xml.bind.annotation.XmlElementWrapper;
> > +import javax.xml.bind.annotation.XmlElements;
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.Description;
> > +import org.apache.jetspeed.om.portlet.DisplayName;
> > +import org.apache.jetspeed.om.portlet.Language;
> > +import org.apache.jetspeed.om.portlet.PortletDefinition;
> > +import org.apache.jetspeed.om.portlet.Supports;
> > +
> > +/**
> > + * PortletDefinitionBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="definition")
> > +public class PortletDefinitionBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String applicationName;
> > +    private String portletName;
> > +    private PortletInfoBean portletInfoBean;
> > +    private Collection<DisplayNameBean> displayNameBeans;
> > +    private Collection<DescriptionBean> descriptionBeans;
> > +    private Collection<SupportsBean> supportsBeans;
> > +    private Collection<LanguageBean> languageBeans;
> > +    
> > +    public PortletDefinitionBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public PortletDefinitionBean(final PortletDefinition portletDefinition)
> > +    {
> > +        applicationName = portletDefinition.getApplication().getName();
> > +        portletName = portletDefinition.getPortletName();
> > +        portletInfoBean = new PortletInfoBean(portletDefinition.getPortletInfo());
> > +        
> > +        ArrayList<DisplayNameBean> displayNameBeanList = new ArrayList<DisplayNameBean>();
> > +        for (DisplayName displayName : portletDefinition.getDisplayNames())
> > +        {
> > +            displayNameBeanList.add(new DisplayNameBean(displayName));
> > +        }
> > +        displayNameBeans = displayNameBeanList;
> > +        
> > +        ArrayList<DescriptionBean> descriptionBeanList = new ArrayList<DescriptionBean>();
> > +        for (Description description : portletDefinition.getDescriptions())
> > +        {
> > +            descriptionBeanList.add(new DescriptionBean(description));
> > +        }
> > +        descriptionBeans = descriptionBeanList;
> > +        
> > +        ArrayList<SupportsBean> supportsBeanList = new ArrayList<SupportsBean>();
> > +        for (Supports supports : portletDefinition.getSupports())
> > +        {
> > +            supportsBeanList.add(new SupportsBean(supports));
> > +        }
> > +        supportsBeans = supportsBeanList;
> > +        
> > +        ArrayList<LanguageBean> languageBeanList = new ArrayList<LanguageBean>();
> > +        for (Language language : portletDefinition.getLanguages())
> > +        {
> > +            languageBeanList.add(new LanguageBean(language));
> > +        }
> > +        languageBeans = languageBeanList;
> > +    }
> > +
> > +    public String getApplicationName()
> > +    {
> > +        return applicationName;
> > +    }
> > +
> > +    public void setApplicationName(String applicationName)
> > +    {
> > +        this.applicationName = applicationName;
> > +    }
> > +
> > +    public String getPortletName()
> > +    {
> > +        return portletName;
> > +    }
> > +
> > +    public void setPortletName(String portletName)
> > +    {
> > +        this.portletName = portletName;
> > +    }
> > +
> > +    @XmlElement(name="portletInfo")
> > +    public PortletInfoBean getPortletInfoBean()
> > +    {
> > +        return portletInfoBean;
> > +    }
> > +
> > +    public void setPortletInfoBean(PortletInfoBean portletInfoBean)
> > +    {
> > +        this.portletInfoBean = portletInfoBean;
> > +    }
> > +
> > +    @XmlElementWrapper(name="displayNames")
> > +    @XmlElements(@XmlElement(name="displayName"))
> > +    public Collection<DisplayNameBean> getDisplayNameBeans()
> > +    {
> > +        return displayNameBeans;
> > +    }
> > +
> > +    public void setDisplayNameBeans(Collection<DisplayNameBean> displayNameBeans)
> > +    {
> > +        this.displayNameBeans = displayNameBeans;
> > +    }
> > +
> > +    @XmlElementWrapper(name="descriptions")
> > +    @XmlElements(@XmlElement(name="description"))
> > +    public Collection<DescriptionBean> getDescriptionBeans()
> > +    {
> > +        return descriptionBeans;
> > +    }
> > +
> > +    public void setDescriptionBeans(Collection<DescriptionBean> descriptionBeans)
> > +    {
> > +        this.descriptionBeans = descriptionBeans;
> > +    }
> > +
> > +    @XmlElementWrapper(name="supports")
> > +    @XmlElements(@XmlElement(name="support"))
> > +    public Collection<SupportsBean> getSupportsBeans()
> > +    {
> > +        return supportsBeans;
> > +    }
> > +
> > +    public void setSupportsBeans(Collection<SupportsBean> supportsBeans)
> > +    {
> > +        this.supportsBeans = supportsBeans;
> > +    }
> > +
> > +    @XmlElementWrapper(name="languages")
> > +    @XmlElements(@XmlElement(name="language"))
> > +    public Collection<LanguageBean> getLanguageBeans()
> > +    {
> > +        return languageBeans;
> > +    }
> > +
> > +    public void setLanguageBeans(Collection<LanguageBean> languageBeans)
> > +    {
> > +        this.languageBeans = languageBeans;
> > +    }
> > +    
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,54 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.Collection;
> > +
> > +import javax.xml.bind.annotation.XmlElement;
> > +import javax.xml.bind.annotation.XmlElements;
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +/**
> > + * PortletDefinitionBeans
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="definitions")
> > +public class PortletDefinitionBeans implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private Collection<PortletDefinitionBean> portletDefinitionBeans;
> > +    
> > +    public PortletDefinitionBeans()
> > +    {
> > +        
> > +    }
> > +    
> > +    @XmlElements(@XmlElement(name="definition"))
> > +    public Collection<PortletDefinitionBean> getPortletDefinitionBean()
> > +    {
> > +        return portletDefinitionBeans;
> > +    }
> > +    
> > +    public void setPortletApplicationBeans(Collection<PortletDefinitionBean> portletDefinitionBeans)
> > +    {
> > +        this.portletDefinitionBeans = portletDefinitionBeans;
> > +    }
> > +    
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletDefinitionBeans.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,81 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.PortletInfo;
> > +
> > +/**
> > + * PortletInfoBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="portletInfo")
> > +public class PortletInfoBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String keywords;
> > +    private String shortTitle;
> > +    private String title;
> > +    
> > +    public PortletInfoBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public PortletInfoBean(final PortletInfo portletInfo)
> > +    {
> > +        keywords = portletInfo.getKeywords();
> > +        shortTitle = portletInfo.getShortTitle();
> > +        title = portletInfo.getTitle();
> > +    }
> > +
> > +    public String getKeywords()
> > +    {
> > +        return keywords;
> > +    }
> > +
> > +    public void setKeywords(String keywords)
> > +    {
> > +        this.keywords = keywords;
> > +    }
> > +
> > +    public String getShortTitle()
> > +    {
> > +        return shortTitle;
> > +    }
> > +
> > +    public void setShortTitle(String shortTitle)
> > +    {
> > +        this.shortTitle = shortTitle;
> > +    }
> > +
> > +    public String getTitle()
> > +    {
> > +        return title;
> > +    }
> > +
> > +    public void setTitle(String title)
> > +    {
> > +        this.title = title;
> > +    }
> > +
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/PortletInfoBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,89 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.beans;
> > +
> > +import java.io.Serializable;
> > +import java.util.Collection;
> > +
> > +import javax.xml.bind.annotation.XmlElement;
> > +import javax.xml.bind.annotation.XmlElementWrapper;
> > +import javax.xml.bind.annotation.XmlElements;
> > +import javax.xml.bind.annotation.XmlRootElement;
> > +
> > +import org.apache.jetspeed.om.portlet.Supports;
> > +
> > +/**
> > + * SupportsBean
> > + * 
> > + * @version $Id$
> > + */
> > +@XmlRootElement(name="support")
> > +public class SupportsBean implements Serializable
> > +{
> > +    private static final long serialVersionUID = 1L;
> > +    
> > +    private String mimeType;
> > +    private Collection<String> portletModes;
> > +    private Collection<String> windowStates;
> > +
> > +    public SupportsBean()
> > +    {
> > +        
> > +    }
> > +    
> > +    public SupportsBean(final Supports supports)
> > +    {
> > +        mimeType = supports.getMimeType();
> > +        portletModes = supports.getPortletModes();
> > +        windowStates = supports.getWindowStates();
> > +    }
> > +
> > +    public String getMimeType()
> > +    {
> > +        return mimeType;
> > +    }
> > +
> > +    public void setMimeType(String mimeType)
> > +    {
> > +        this.mimeType = mimeType;
> > +    }
> > +
> > +    @XmlElementWrapper(name="portletModes")
> > +    @XmlElements(@XmlElement(name="portletMode"))
> > +    public Collection<String> getPortletModes()
> > +    {
> > +        return portletModes;
> > +    }
> > +
> > +    public void setPortletModes(Collection<String> portletModes)
> > +    {
> > +        this.portletModes = portletModes;
> > +    }
> > +
> > +    @XmlElementWrapper(name="windowStates")
> > +    @XmlElements(@XmlElement(name="windowState"))
> > +    public Collection<String> getWindowStates()
> > +    {
> > +        return windowStates;
> > +    }
> > +
> > +    public void setWindowStates(Collection<String> windowStates)
> > +    {
> > +        this.windowStates = windowStates;
> > +    }
> > +
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/beans/SupportsBean.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java (added)
> > +++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,147 @@
> > +/*
> > + * 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 org.apache.jetspeed.services.rest;
> > +
> > +import java.util.ArrayList;
> > +import java.util.List;
> > +
> > +import javax.servlet.ServletConfig;
> > +import javax.servlet.ServletContext;
> > +import javax.servlet.http.HttpServletRequest;
> > +import javax.ws.rs.GET;
> > +import javax.ws.rs.Path;
> > +import javax.ws.rs.PathParam;
> > +import javax.ws.rs.core.Context;
> > +import javax.ws.rs.core.UriInfo;
> > +
> > +import org.apache.commons.lang.StringUtils;
> > +import org.apache.jetspeed.Jetspeed;
> > +import org.apache.jetspeed.components.portletregistry.PortletRegistry;
> > +import org.apache.jetspeed.om.portlet.PortletApplication;
> > +import org.apache.jetspeed.om.portlet.PortletDefinition;
> > +import org.apache.jetspeed.services.beans.PortletApplicationBean;
> > +import org.apache.jetspeed.services.beans.PortletApplicationBeans;
> > +import org.apache.jetspeed.services.beans.PortletDefinitionBean;
> > +import org.apache.jetspeed.services.beans.PortletDefinitionBeans;
> > +import org.slf4j.Logger;
> > +import org.slf4j.LoggerFactory;
> > +
> > +/**
> > + * PortletRegistryService
> > + * 
> > + * @vesion $Id$
> > + */
> > +
> > +@Path("/portletregistry/")
> > +public class PortletRegistryService
> > +{
> > +    
> > +    private static Logger log = LoggerFactory.getLogger(PortletRegistryService.class);
> > +    
> > +    @Context
> > +    private ServletConfig servletConfig;
> > +    
> > +    @Context
> > +    private ServletContext servletContext;
> > +    
> > +    @Context
> > +    private HttpServletRequest servletRequest;
> > +    
> > +    @Context
> > +    private UriInfo uriInfo;
> > +    
> > +    private PortletRegistry portletRegistry;
> > +    
> > +    public PortletRegistryService()
> > +    {
> > +        portletRegistry = (PortletRegistry) Jetspeed.getComponentManager().getComponent(PortletRegistry.class);
> > +    }
> > +    
> > +    @GET
> > +    @Path("/application/{name}")
> > +    public PortletApplicationBeans getPortletApplication(@PathParam("name") String name)
> > +    {
> > +        PortletApplicationBeans paBeans = new PortletApplicationBeans();
> > +        List<PortletApplicationBean> paBeanList = new ArrayList<PortletApplicationBean>();
> > +        
> > +        if (StringUtils.isBlank(name))
> > +        {
> > +            for (PortletApplication pa : portletRegistry.getPortletApplications())
> > +            {
> > +                paBeanList.add(new PortletApplicationBean(pa));
> > +            }
> > +        }
> > +        else
> > +        {
> > +            PortletApplication pa = portletRegistry.getPortletApplication(name, true);
> > +            
> > +            if (pa != null)
> > +            {
> > +                paBeanList.add(new PortletApplicationBean(pa));
> > +            }
> > +        }
> > +        
> > +        paBeans.setPortletApplicationBeans(paBeanList);
> > +        return paBeans;
> > +    }
> > +    
> > +    @GET
> > +    @Path("/definition/{uniqueName}")
> > +    public PortletDefinitionBeans getPortletDefinition(@PathParam("uniqueName") String uniqueName)
> > +    {
> > +        PortletDefinitionBeans pdBeans = new PortletDefinitionBeans();
> > +        List<PortletDefinitionBean> pdBeanList = new ArrayList<PortletDefinitionBean>();
> > +        
> > +        if (StringUtils.isBlank(uniqueName))
> > +        {
> > +            for (PortletDefinition pd : portletRegistry.getAllPortletDefinitions())
> > +            {
> > +                pdBeanList.add(new PortletDefinitionBean(pd));
> > +            }
> > +        }
> > +        else
> > +        {
> > +            int offset = uniqueName.indexOf("::");
> > +            
> > +            if (offset != -1)
> > +            {
> > +                PortletDefinition pd = portletRegistry.getPortletDefinitionByUniqueName(uniqueName, true);
> > +                
> > +                if (pd != null)
> > +                {
> > +                    pdBeanList.add(new PortletDefinitionBean(pd));
> > +                }
> > +            }
> > +            else
> > +            {
> > +                PortletApplication pa = portletRegistry.getPortletApplication(uniqueName, true);
> > +                
> > +                if (pa != null)
> > +                {
> > +                    for (PortletDefinition pd : pa.getPortlets())
> > +                    {
> > +                        pdBeanList.add(new PortletDefinitionBean(pd));
> > +                    }
> > +                }
> > +            }
> > +        }
> > +        
> > +        pdBeans.setPortletApplicationBeans(pdBeanList);
> > +        return pdBeans;
> > +    }
> > +    
> > +}
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/PortletRegistryService.java
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Added: portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml?rev=884670&view=auto
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml (added)
> > +++ portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml Thu Nov 26 19:21:39 2009
> > @@ -0,0 +1,55 @@
> > +<?xml version="1.0" encoding="UTF-8"?>
> > +<!--
> > +  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.
> > +-->
> > +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > +  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
> > +  
> > +  <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
> > +    <property name="targetClass" value="java.lang.System"/>
> > +    <property name="targetMethod" value="setProperty"/>
> > +    <property name="arguments">
> > +      <list>
> > +        <value>org.apache.cxf.Logger</value>
> > +        <value>org.apache.cxf.common.logging.Log4jLogger</value>
> > +      </list>
> > +    </property>
> > +  </bean>
> > +  
> > +  <bean id="cxfServlet" class="org.apache.cxf.jaxrs.servlet.CXFNonSpringJaxrsServlet">
> > +    <meta key="j2:cat" value="default" />
> > +  </bean>
> > +  
> > +  <bean id="cxfServletConfig" class="org.apache.jetspeed.pipeline.valve.impl.ServletDelegatingValve$ServletConfigImpl">
> > +    <meta key="j2:cat" value="default" />
> > +    <constructor-arg value="CXFNonSpringJaxrsServlet" />
> > +    <constructor-arg>
> > +      <props>
> > +        <!-- White space separted resource class names -->
> > +        <prop key="jaxrs.serviceClasses">
> > +          org.apache.jetspeed.services.rest.PortletRegistryService
> > +        </prop>
> > +      </props>
> > +    </constructor-arg>
> > +    <property name="servletContext">
> > +      <bean class="org.springframework.beans.factory.config.PropertyPathFactoryBean">
> > +        <property name="targetObject" ref="javax.servlet.ServletConfig" />
> > +        <property name="propertyPath" value="servletContext"/>
> > +      </bean>
> > +    </property>
> > +  </bean>
> > +  
> > +</beans>
> > \ No newline at end of file
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml
> > ------------------------------------------------------------------------------
> >     svn:eol-style = native
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml
> > ------------------------------------------------------------------------------
> >     svn:keywords = Id
> > 
> > Propchange: portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/jetspeed-restful-services.xml
> > ------------------------------------------------------------------------------
> >     svn:mime-type = text/plain
> > 
> > Modified: portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/pipelines.xml
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/pipelines.xml?rev=884670&r1=884669&r2=884670&view=diff
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/pipelines.xml (original)
> > +++ portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/resources/assembly/pipelines.xml Thu Nov 26 19:21:39 2009
> > @@ -349,7 +349,14 @@
> >        <ref bean="RolesSecurityBehavior" />
> >      </constructor-arg>
> >    </bean>
> > -
> > +  
> > +  <bean id="RestfulServicesValve" class="org.apache.jetspeed.pipeline.valve.impl.ServletDelegatingValve" 
> > +        init-method="initialize" destroy-method="destroy">
> > +    <meta key="j2:cat" value="default" />
> > +    <constructor-arg ref="cxfServlet" />
> > +    <constructor-arg ref="cxfServletConfig" />
> > +  </bean>
> > +  
> >    <bean id="DecorationValve" class="org.apache.jetspeed.decoration.DecorationValve" init-method="initialize">
> >      <meta key="j2:cat" value="default" />
> >      <constructor-arg index='0'>
> > @@ -714,6 +721,25 @@
> >      </constructor-arg>
> >    </bean>
> >  
> > +  <bean id="restful-services-pipeline" class="org.apache.jetspeed.pipeline.JetspeedPipeline" init-method="initialize">
> > +    <meta key="j2:cat" value="default" />
> > +    <constructor-arg>
> > +      <value>RestfulServicesPipeline</value>
> > +    </constructor-arg>
> > +    <constructor-arg>
> > +      <list>
> > +        <ref bean="capabilityValve" />
> > +        <ref bean="portalURLValve" />
> > +        <ref bean="securityValve" />
> > +        <ref bean="localizationValve" />
> > +        <ref bean="profilerValve" />
> > +        <ref bean="refreshUserHomepageValve" />
> > +        <ref bean="containerValve" />
> > +        <ref bean="RestfulServicesValve" />
> > +      </list>
> > +    </constructor-arg>
> > +  </bean>
> > +  
> >    <bean id="fileserver-pipeline" class="org.apache.jetspeed.pipeline.JetspeedPipeline" init-method="initialize">
> >      <meta key="j2:cat" value="default" />
> >      <constructor-arg>
> > @@ -793,18 +819,21 @@
> >          <entry key='/portal'>
> >            <value>jetspeed-pipeline</value>
> >          </entry>
> > -        <entry key='/ajaxapi'>
> > -          <value>ajax-pipeline</value>
> > -        </entry>
> >          <entry key='/login'>
> >            <value>jetspeed-pipeline</value>
> >          </entry>
> >          <entry key='/fileserver'>
> >            <value>fileserver-pipeline</value>
> >          </entry>
> > +        <entry key='/ajaxapi'>
> > +          <value>ajax-pipeline</value>
> > +        </entry>
> >          <entry key='/ajax'>
> >            <value>ajax-direct-pipeline</value>
> >          </entry>
> > +        <entry key='/services'>
> > +          <value>restful-services-pipeline</value>
> > +        </entry>
> >          <entry key='/desktop'>
> >            <value>desktop-pipeline</value>
> >          </entry><!-- for jetspeed desktop, the keys /desktop, /action and /render cannot be changed -->
> > 
> > Modified: portals/jetspeed-2/portal/trunk/pom.xml
> > URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/pom.xml?rev=884670&r1=884669&r2=884670&view=diff
> > ==============================================================================
> > --- portals/jetspeed-2/portal/trunk/pom.xml (original)
> > +++ portals/jetspeed-2/portal/trunk/pom.xml Thu Nov 26 19:21:39 2009
> > @@ -269,6 +269,7 @@
> >      <javax.servlet.jsp.version>2.0</javax.servlet.jsp.version>
> >      <javax.sql.version>2.0</javax.sql.version>
> >      <javax.transaction.version>1.0.1B</javax.transaction.version>
> > +    <javax.ws.rs.version>1.0</javax.ws.rs.version>
> >      <jaxen.version>1.0-FCS</jaxen.version>
> >      <jaxb.version>2.1</jaxb.version>
> >      <jaxb-impl.version>2.1.9</jaxb-impl.version>
> > @@ -311,6 +312,7 @@
> >      <ccpp.version>1.0</ccpp.version>
> >      <commonj.version>1.1</commonj.version>
> >      <tyrex.version>1.0.1</tyrex.version>
> > +    <cxf.version>2.2.5</cxf.version>
> >    </properties>
> >  
> >    <!-- Dependency Configuration -->
> > @@ -974,7 +976,44 @@
> >          <artifactId>jaxb-impl</artifactId>
> >          <version>${jaxb-impl.version}</version>
> >        </dependency>
> > -
> > +      
> > +      <!-- JAX-RS -->
> > +      <dependency>
> > +        <groupId>javax.ws.rs</groupId>
> > +        <artifactId>jsr311-api</artifactId>
> > +        <version>${javax.ws.rs.version}</version>
> > +      </dependency>
> > +      
> > +      <!-- CXF -->
> > +      <dependency>
> > +        <groupId>org.apache.cxf</groupId>
> > +        <artifactId>cxf-rt-frontend-jaxrs</artifactId>
> > +        <version>${cxf.version}</version>
> > +        <scope>runtime</scope>
> > +        <exclusions>
> > +          <exclusion>
> > +            <groupId>commons-logging</groupId>
> > +            <artifactId>commons-logging</artifactId>
> > +          </exclusion>
> > +          <exclusion>
> > +            <groupId>org.springframework</groupId>
> > +            <artifactId>spring-core</artifactId>
> > +          </exclusion>
> > +          <exclusion>
> > +            <groupId>org.springframework</groupId>
> > +            <artifactId>spring-beans</artifactId>
> > +          </exclusion>
> > +          <exclusion>
> > +            <groupId>org.springframework</groupId>
> > +            <artifactId>spring-context</artifactId>
> > +          </exclusion>
> > +          <exclusion>
> > +            <groupId>org.springframework</groupId>
> > +            <artifactId>spring-web</artifactId>
> > +          </exclusion>
> > +        </exclusions>
> > +      </dependency>
> > +      
> >        <!-- Test -->
> >        <dependency>
> >          <groupId>junit</groupId>
> > 
> > 
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
> > For additional commands, e-mail: jetspeed-dev-help@portals.apache.org
> > 
> 
> 
> 
>       
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
> For additional commands, e-mail: jetspeed-dev-help@portals.apache.org
> 

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message