Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Liferay:在一个Liferay插件项目中配置多个Spring MVC Portlet_Java_Spring Mvc_Liferay 6_Spring Portlet Mvc - Fatal编程技术网

Java Liferay:在一个Liferay插件项目中配置多个Spring MVC Portlet

Java Liferay:在一个Liferay插件项目中配置多个Spring MVC Portlet,java,spring-mvc,liferay-6,spring-portlet-mvc,Java,Spring Mvc,Liferay 6,Spring Portlet Mvc,我正在liferay中开发基于SpringMVC的portlet。基本上,我希望在单个liferay项目中配置和维护2或3个Portlet。能否有人指导我进行同样的配置。类似于portlet.xml、spring配置和web配置(如果需要)的配置代码。我只需要为我的所有Portlet分别配置一个默认控制器,这样每个Portlet将在不同的登录页中登录 有人知道如何配置这些portlet吗?任何建议都会有帮助:D 提前感谢。是的,可以在一个插件项目中配置多个spring Portlet,使单个.w

我正在liferay中开发基于SpringMVC的portlet。基本上,我希望在单个liferay项目中配置和维护2或3个Portlet。能否有人指导我进行同样的配置。类似于portlet.xml、spring配置和web配置(如果需要)的配置代码。我只需要为我的所有Portlet分别配置一个默认控制器,这样每个Portlet将在不同的登录页中登录

有人知道如何配置这些portlet吗?任何建议都会有帮助:D


提前感谢。

是的,可以在一个插件项目中配置多个spring Portlet,使单个.war文件包含多个Portlet

在web.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>

上下文配置位置
类路径:applicationContext.xml
org.springframework.web.context.ContextLoaderListener
视图servlet
org.springframework.web.servlet.viewRenderServlet
1.
视图servlet
/WEB-INF/servlet/view
在applicationContext.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
您可以在这里为所有portlet指定公共bean配置

<context:annotation-config />
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
    <property name="cache" value="false"/>
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/jsp/"/>
    <property name="suffix" value=".jsp"/>
    <property name="contentType" value="text/html; charset=UTF-8" />
</bean>

在portlet.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
您可以在此文件中指定的多个条目。对于SpringPortlet,您应该指定和,如下所示

    <portlet-class>org.springframework.web.portlet.DispatcherPortlet</portlet-class>
    <init-param>
        <name>contextConfigLocation</name>
        <value>classpath:myportlet-context.xml</value>
    </init-param>
org.springframework.web.portlet.DispatcherPortlet
上下文配置位置
类路径:myportlet-context.xml
在myportlet context.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
将您的portlet控制器类放在my.portlet.package中,并在此文件中指定它

在liferayportlet.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
甚至这个文件也包含多个标记

在portlet控制器类中

添加注释以指定控制器并使用portlet模式进行映射。您可以在这里看到spring文档中提供的各种其他映射

@控制器

@RequestMapping(值=PortletModeVal.VIEW)

公共类MyPortletControll实现PortletConfigAware


是的,可以在一个插件项目中配置多个spring Portlet,使单个.war文件包含多个Portlet

在web.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>

上下文配置位置
类路径:applicationContext.xml
org.springframework.web.context.ContextLoaderListener
视图servlet
org.springframework.web.servlet.viewRenderServlet
1.
视图servlet
/WEB-INF/servlet/view
在applicationContext.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
您可以在这里为所有portlet指定公共bean配置

<context:annotation-config />
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
    <property name="cache" value="false"/>
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    <property name="prefix" value="/jsp/"/>
    <property name="suffix" value=".jsp"/>
    <property name="contentType" value="text/html; charset=UTF-8" />
</bean>

在portlet.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
您可以在此文件中指定的多个条目。对于SpringPortlet,您应该指定和,如下所示

    <portlet-class>org.springframework.web.portlet.DispatcherPortlet</portlet-class>
    <init-param>
        <name>contextConfigLocation</name>
        <value>classpath:myportlet-context.xml</value>
    </init-param>
org.springframework.web.portlet.DispatcherPortlet
上下文配置位置
类路径:myportlet-context.xml
在myportlet context.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
将您的portlet控制器类放在my.portlet.package中,并在此文件中指定它

在liferayportlet.xml中

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
    <servlet-name>view-servlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>view-servlet</servlet-name>
    <url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
甚至这个文件也包含多个标记

在portlet控制器类中

添加注释以指定控制器并使用portlet模式进行映射。您可以在这里看到spring文档中提供的各种其他映射

@控制器

@RequestMapping(值=PortletModeVal.VIEW)

公共类MyPortletControll实现PortletConfigAware


伟大的很高兴知道这有帮助,太好了。很高兴知道这有帮助。