Liferay hook:过滤器 url 给出 filterstart 错误,当前 url 生成异常 null
我正在尝试使用 liferay hook 在 Eclipse 中创建自动登录过滤器。
现在我已将: 添加
<filter>
<filter-name>myautologinfilter</filter-name>
<filter-class>bla.bla.xyz</filter-class>
</filter>
<filter-mapping>
<filter-name>myautologinfilter</filter-name>
<url-pattern>/c/login/myurl</url-pattern>
</filter-mapping>
到 liferay hook 的 web.xml 中。
在 liferay-hook.xml 中,我添加了:
在 hook.xml 中,我添加了: auto.login.hooks= bla.bla.xyz
bla.bla.xyz 实现了 AutoLogin,但现在它的功能相当糟糕:
@Override
public String[] login(HttpServletRequest request, HttpServletResponse response)
throws AutoLoginException {
Object parameters = request.getAttribute("javax.servlet.forward.query_string");
Map<String, String> x = parserClass.parsing(parameters.toString());
System.out.println("voornaam: " + geparsdeParameters.get("tokenvalue1"));
try {
return null;
} catch (Exception e) {
throw new AutoLoginException(e);
}
}
由于当我添加过滤时钩子没有启动,所以我删除了它并尝试了:
http://localhost:8080/c/portal/login?tokenvalue1=55
但是当我检查我的 tomcat 时,我请参阅:错误 XYZ Url:url myUsedUrl 异常 null
另外,我尝试添加一些 util 类,但我得到了 classnotfoundexception
。
当我在钩子中添加额外的类时,有什么具体的事情需要做吗?
I'm trying to make an autologinfilter in Eclipse using a liferay hook.
Now I've added the:
<filter>
<filter-name>myautologinfilter</filter-name>
<filter-class>bla.bla.xyz</filter-class>
</filter>
<filter-mapping>
<filter-name>myautologinfilter</filter-name>
<url-pattern>/c/login/myurl</url-pattern>
</filter-mapping>
to the liferay hook's web.xml.
In the liferay-hook.xml I added: <portal-properties>portal.properties</portal-properties>
And in that hook.xml I added: auto.login.hooks=bla.bla.xyz
bla.bla.xyz implements AutoLogin, but for now it's pretty gutted:
@Override
public String[] login(HttpServletRequest request, HttpServletResponse response)
throws AutoLoginException {
Object parameters = request.getAttribute("javax.servlet.forward.query_string");
Map<String, String> x = parserClass.parsing(parameters.toString());
System.out.println("voornaam: " + geparsdeParameters.get("tokenvalue1"));
try {
return null;
} catch (Exception e) {
throw new AutoLoginException(e);
}
}
Since the hook doesn't start when I add the filtering I removed it and just tried:
http://localhost:8080/c/portal/login?tokenvalue1=55
but when I check my tomcat I see: Error XYZ Url: url myUsedUrl exception null
Also I tried adding some util classes but I got classnotfoundexception
s.
Is there anything specific I have to do when I add extra classes in a hook?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不应在 web.xml 中添加过滤器 - 只需将其添加到 auto.login.hooks 属性中。 LR 6.0.5 Portal.properties 中的原始属性:
在 portal-ext.properties 文件中覆盖此属性 - 将 bla.bla.xyz 添加到链的末尾或替换所有用你的过滤器。
You should not add your filter in web.xml - just add it to auto.login.hooks property. Original property from LR 6.0.5 portal.properties:
Override this property in portal-ext.properties file - add bla.bla.xyz to the end of chain or replace all filters with yours.