Мы используем JBoss 4.22 с портлетами. Когда тег слушателя отсутствует в файле web.xml, портлет загружается, но сеанс sessionDestroyed () никогда не вызывается (очевидно) При добавлении портлет не загружается, и нет никаких исключений или сообщений журнала. Есть ли какие-то ошибки, о которых я должен знать?
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<!-- Listeners used by application -->
<listener>
<listener-class>listenerpackage.MyClassThatImplementsHttpSessionListener</listener-class>
</listener>
...Other tags...
</web-app>
В ответ на комментарии я просматривал код, чтобы найти проблемные места. У конструктора моего слушателя действительно есть некоторые проблемы. Обычно (не как слушатель) экземпляр создается конструктором соответствующего портлета (тот, который не загружается при добавлении слушателя в web.xml). Могу ли я ожидать, что это так, или контейнер сам создает экземпляр?