Это исключение может быть вызвано несоответствующим именем портлета на вашей странице. Это часто происходит, когда приложение с портлетами развертывается с одним именем, но затем фрагмент страницы ссылается на другое имя, например, на вашей странице:
<fragment id="1234" type="portlet" name="myApp::myPortlet">
и при развертывании файла войны он называется, например, myApp-1.0-SNAPSHOT.war
Атрибут имени фрагмента должен иметь значение "$ {portlet.war.name} :: $ {portlet.name}. Первая часть ($ {portlet.war.name}) - это имя файла войны с портлетами , минус .war. Вторая часть основана на значении тега в файле portlet.xml.
Вы можете переименовать ваш файл войны или изменить определение страницы, чтобы включить версию. Я не рекомендую указывать номер версии во фрагменте, так как он может измениться.
Третье решение состоит в том, чтобы фактически изменить имя приложения с портлетами в вашем файле web.xml, установив параметр init с именем contextName в сервлете Jetspeed Container. В приведенном ниже примере установлено значение «myApp»:
<servlet>
<description>MVC Servlet for Jetspeed Portlet Applications</description>
<display-name>Jetspeed Container</display-name>
<servlet-name>JetspeedContainer</servlet-name>
<servlet-class>
org.apache.jetspeed.container.JetspeedContainerServlet</servlet-class>
<init-param>
<param-name>contextName</param-name>
<param-value>myApp</param-value>
</init-param>
<load-on-startup>100</load-on-startup>
</servlet>