Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.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
Liferay portlet部署Java错误_Java_Eclipse_Liferay_Portlet - Fatal编程技术网

Liferay portlet部署Java错误

Liferay portlet部署Java错误,java,eclipse,liferay,portlet,Java,Eclipse,Liferay,Portlet,我在尝试在Liferay 6.2中部署portlet时遇到问题。我对JAVA非常陌生,也不熟悉处理此类错误,所以请原谅我在处理此类问题时有点幼稚 以下是我在Eclipse上遇到的错误: 找不到“”的标记库描述符,关于此行: <%@ taglib uri="http://java.sun.com/portlet" prefix="portlet" %> <portlet:defineObjects /> ResourceBundle resourceBundle = p

我在尝试在Liferay 6.2中部署portlet时遇到问题。我对JAVA非常陌生,也不熟悉处理此类错误,所以请原谅我在处理此类问题时有点幼稚

以下是我在Eclipse上遇到的错误:

找不到“”的标记库描述符,关于此行:

<%@ taglib uri="http://java.sun.com/portlet" prefix="portlet" %>
<portlet:defineObjects />
ResourceBundle resourceBundle = portletConfig.getResourceBundle(locale);
ResourceBundle resourceBundle = portletConfig.getResourceBundle(locale);

Duplicate local variable resourceBundle__60: <portlet:defineObjects />__61: __62: <%__63: ResourceBundle resourceBundle = portletConfig.getResourceBundle(locale);
这是我的init.jsp(请阅读最后的注释):

我尝试将liferay-portlet.tld添加到此文件夹,但也没有成功,这是我的web.xml,您可以看到我在其中定义了portlet.tld

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.5" 

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

<display-name>Valisa</display-name>
<context-param>
    <param-name>company_id</param-name>
    <param-value>aoc</param-value>
</context-param>

<listener>
    <listener-class>com.liferay.portal.kernel.servlet.PortletContextListener</listener-class>
</listener>

<listener>
    <listener-class>net.opentrends.caoc.portlet.valisa.portlet.ListenerStartup</listener-class>
</listener>

<servlet>
    <servlet-name>valisa</servlet-name>
    <servlet-class>com.liferay.portal.kernel.servlet.PortletServlet</servlet-class>
    <init-param>
        <param-name>portlet-class</param-name>
        <param-value>net.opentrends.caoc.portlet.valisa.portlet.ValisaPortlet</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
</servlet>
<servlet>
    <servlet-name>dwr-invoker</servlet-name>
    <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>true</param-value>
    </init-param>
</servlet>
    <servlet>
    <servlet-name>DescarregarDocumentAdjuntServlet</servlet-name>
    <servlet-class>cat.aoc.eacatpl.valisa.servlet.DescarregarDocumentAdjuntServlet</servlet-class>
</servlet>
<servlet>
    <servlet-name>ObtenirCorreuElectronicAjaxServlet</servlet-name>
    <servlet-class>cat.aoc.eacatpl.valisa.servlet.ObtenirCorreuElectronicAjaxServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>valisa</servlet-name>
    <url-pattern>/valisa2014-portlet/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>DescarregarDocumentAdjuntServlet</servlet-name>
    <url-pattern>/ajax/descarregarDocumentAdjunt</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>ObtenirCorreuElectronicAjaxServlet</servlet-name>
    <url-pattern>/ajax/obtenirCorreuContactes</url-pattern>
</servlet-mapping>


<jsp-config>    
    <taglib>
        <taglib-uri>http://java.sun.com/portlet</taglib-uri>
        <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location>
    </taglib>
    <taglib>
        <taglib-uri>http://liferay.com/tld/theme</taglib-uri>
        <taglib-location>/WEB-INF/tld/liferay-theme.tld</taglib-location>
    </taglib>
    <taglib>
        <taglib-uri>http://liferay.com/tld/ui</taglib-uri>
        <taglib-location>/WEB-INF/tld/liferay-ui.tld</taglib-location>
    </taglib>
    <taglib>
        <taglib-uri>http://liferay.com/tld/util</taglib-uri>
        <taglib-location>/WEB-INF/tld/liferay-util.tld</taglib-location>
    </taglib>
</jsp-config>

瓦利萨
公司id
aoc
com.liferay.portal.kernel.servlet.PortletContextListener
net.opentrends.caoc.portlet.valisa.portlet.ListenerStartup
瓦利萨
com.liferay.portal.kernel.servlet.PortletServlet
portlet类
net.opentrends.caoc.portlet.valisa.portlet.ValisaPortlet
0
dwr调用程序
英国有限公司getahead.dwr.DWRServlet
调试
真的
DescarregardDocumentAdditionServlet
cat.aoc.eacatpl.valisa.servlet.descrregardDocument附加servlet
obtenircorruelectronicajaxservlet
cat.aoc.eacatpl.valisa.servlet.obtenircorruelectronicajaxservlet
瓦利萨
/valisa2014 portlet/*
dwr调用程序
/dwr/*
DescarregardDocumentAdditionServlet
/ajax/DescarregardDocumentAdjunt
obtenircorruelectronicajaxservlet
/ajax/obtenircorreActes
http://java.sun.com/portlet
/WEB-INF/tld/liferay-portlet.tld
http://liferay.com/tld/theme
/WEB-INF/tld/liferay-theme.tld
http://liferay.com/tld/ui
/WEB-INF/tld/liferay-ui.tld
http://liferay.com/tld/util
/WEB-INF/tld/liferay-util.tld


任何帮助都将不胜感激。

请尝试在web.xml中更改此选项:

<taglib>
    <taglib-uri>http://java.sun.com/portlet</taglib-uri>
    <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location>
</taglib>

http://java.sun.com/portlet
/WEB-INF/tld/liferay-portlet.tld
并将其替换为

<taglib>
    <taglib-uri>http://java.sun.com/portlet_2_0</taglib-uri>
    <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location>
</taglib>

http://java.sun.com/portlet_2_0
/WEB-INF/tld/liferay-portlet.tld

因为portlet_2_0是此标记库的实际值。重复清洗-这将开始消除第一个错误-因为这是关于编译,通常修复根本原因修复更多内容。如果没有,请返回报告。

尝试在web.xml中更改此选项:

<taglib>
    <taglib-uri>http://java.sun.com/portlet</taglib-uri>
    <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location>
</taglib>

http://java.sun.com/portlet
/WEB-INF/tld/liferay-portlet.tld
并将其替换为

<taglib>
    <taglib-uri>http://java.sun.com/portlet_2_0</taglib-uri>
    <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location>
</taglib>

http://java.sun.com/portlet_2_0
/WEB-INF/tld/liferay-portlet.tld
因为portlet_2_0是此标记库的实际值。重复清洗-这将开始消除第一个错误-因为这是关于编译,通常修复根本原因修复更多内容。如果没有,请报告

  • TLD
  • Liferay在部署时自动添加TLD。只需查看容器中已部署portlet的目录,例如,在tomcat中,它将是
    ${catalina.home}/webapps/your portlet
    (它也会稍微更改web.xml,您可以将其作为更好地理解Liferay的工具)

    当然Eclipse不会知道这一点,但是如果您将TLD放在完全相同的位置,您应该会很好。确保对正确的Liferay版本使用TLD–您只需使用部署的portlet中的TLD即可

  • 不可解变量
  • Eclipse也很难从不同的标签中推断出所有的副作用。一切可能都很好,因为
    locale
    portletConfig
    都是通过JSP中的
    defineObject
    标记添加的。这些警告很烦人,但我真的不知道人们是否能对它们做些什么

  • 例外
  • 正如其中一条评论中提到的,您可能试图定义一个已经在别处定义的变量。可能在某个标签中,如第2点所述。重命名变量或删除赋值并使用已定义的赋值

  • TLD
  • Liferay在部署时自动添加TLD。只需查看容器中已部署portlet的目录,例如,在tomcat中,它将是
    ${catalina.home}/webapps/your portlet
    (它也会稍微更改web.xml,您可以将其作为更好地理解Liferay的工具)

    当然Eclipse不会知道这一点,但是如果您将TLD放在完全相同的位置,您应该会很好。确保对正确的Liferay版本使用TLD–您只需使用部署的portlet中的TLD即可

  • 不可解变量
  • Eclipse也很难从不同的标签中推断出所有的副作用。一切可能都很好,因为
    locale
    portletConfig
    都是通过JSP中的
    defineObject
    标记添加的。这些警告很烦人,但我真的不知道人们是否能对它们做些什么

  • 例外

  • 正如其中一条评论中提到的,您可能试图定义一个已经在别处定义的变量。可能在某个标签中,如第2点所述。重命名变量或删除赋值并使用已定义的变量。

    请与您共享pom.xml,我想它可能缺少依赖项。您能告诉我该文件在哪里吗@太空之家。我在portlet档案中找不到它。谢谢啊,好吧,也许你没有使用Maven来管理依赖关系。在这种情况下,您使用的是什么系统?Ivy?我确定我没有使用Maven进行依赖项管理,但老实说,我不能告诉你我是否在使用Ivy,如果我想添加依赖项,我只需将其添加到java构建路径。对不起,我真的是新手@根据错误,其查找范围中定义的相同变量。简单的解决方法是重命名变量名。请共享pom.xml,我想它可能缺少依赖项。您能告诉我该文件在哪里吗@太空之家。我在portlet档案中找不到它。谢谢啊,好吧,也许你不是在用Maven来代替y