当 运行 作为服务 (org.apache.jsp.user.edit_002duser_002droles_jsp) 时,wso2 是 5.1.0 缺少 类
wso2 is 5.1.0 missing classes when running as a service (org.apache.jsp.user.edit_002duser_002droles_jsp)
从 WSO2 IS 5.0.0 SP1 升级到 WSO2 IS 5.1.1 补丁 92(Windows Server 2008,JRE 1.7),运行 作为 Windows 服务(安装使用yajsw.conf)。
给用户添加角色失败(空白页),在wso2carbon.log中我们有一个异常:
Caused by: java.lang.ClassNotFoundException:
org.apache.jsp.user.edit_002duser_002droles_jsp
at java.net.URLClassLoader.run(URLClassLoader.java:366)
at java.net.URLClassLoader.run(URLClassLoader.java:355)
Caused by: java.io.IOException: JSPException while including path '/user/edit-user-roles.jsp'. ServletException while including page.
at org.apache.tiles.jsp.context.JspTilesRequestContext.include(JspTilesRequestContext.java:91)
at org.apache.tiles.jsp.context.JspTilesRequestContext.dispatch(JspTilesRequestContext.java:82)
有趣的是,控制台中的 运行 WSO2 IS 5.1.0 可以正常工作 (wso2server.bat),没有任何问题。我搜索了 edit-user-roles.jsp 文件,并在库 org.wso2.carbon.user.mgt.ui_5.0.7.jar[=33 中找到了它=](repository/components/plugins 和 repository/components/patches/patch0000)。所以 - 看起来库没有正确加载。
我正在比较作为服务启动的 IS 和从 CLI 启动的 IS 之间的 JVM 设置。我发现的唯一差异是 -Dcomponents.repo 参数:
- wso2server.bat: -Dcomponents.repo=%CARBON_HOME%\repository\components
- wrapper.conf: -Dcomponents.repo=%CARBON_HOME%\repository\components\dropins
但是
- 在 WSO2 IS 5.0.0S.P1 中看起来一样(wso2server.bat 和 wrapper.conf 中有不同的值)并且向用户帐户添加角色没有问题
- 我已经将 wrapper.conf 更改为相同的值 (=%CARBON_HOME%\repository\components) 但没有效果
wrapper.conf 的以下更新解决了问题:
wrapper.java.additional.18 = -Dcomponents.repo=${carbon_home}\repository\components
wrapper.java.additional.26 = -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false
从 WSO2 IS 5.0.0 SP1 升级到 WSO2 IS 5.1.1 补丁 92(Windows Server 2008,JRE 1.7),运行 作为 Windows 服务(安装使用yajsw.conf)。
给用户添加角色失败(空白页),在wso2carbon.log中我们有一个异常:
Caused by: java.lang.ClassNotFoundException:
org.apache.jsp.user.edit_002duser_002droles_jsp
at java.net.URLClassLoader.run(URLClassLoader.java:366)
at java.net.URLClassLoader.run(URLClassLoader.java:355)
Caused by: java.io.IOException: JSPException while including path '/user/edit-user-roles.jsp'. ServletException while including page.
at org.apache.tiles.jsp.context.JspTilesRequestContext.include(JspTilesRequestContext.java:91)
at org.apache.tiles.jsp.context.JspTilesRequestContext.dispatch(JspTilesRequestContext.java:82)
有趣的是,控制台中的 运行 WSO2 IS 5.1.0 可以正常工作 (wso2server.bat),没有任何问题。我搜索了 edit-user-roles.jsp 文件,并在库 org.wso2.carbon.user.mgt.ui_5.0.7.jar[=33 中找到了它=](repository/components/plugins 和 repository/components/patches/patch0000)。所以 - 看起来库没有正确加载。
我正在比较作为服务启动的 IS 和从 CLI 启动的 IS 之间的 JVM 设置。我发现的唯一差异是 -Dcomponents.repo 参数:
- wso2server.bat: -Dcomponents.repo=%CARBON_HOME%\repository\components
- wrapper.conf: -Dcomponents.repo=%CARBON_HOME%\repository\components\dropins
但是
- 在 WSO2 IS 5.0.0S.P1 中看起来一样(wso2server.bat 和 wrapper.conf 中有不同的值)并且向用户帐户添加角色没有问题
- 我已经将 wrapper.conf 更改为相同的值 (=%CARBON_HOME%\repository\components) 但没有效果
wrapper.conf 的以下更新解决了问题:
wrapper.java.additional.18 = -Dcomponents.repo=${carbon_home}\repository\components
wrapper.java.additional.26 = -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false