0

当有人访问我的网站时,我想显示一个通用主页 (index.jspx)。该站点使用 Spring Roo / gvNIX 构建并使用典型安全性。

然而,默认情况下,只要用户未登录,就会显示 login.jspx 页面而不是 index.jspx 页面,请参见 Petclinic 站点的插图,https: //petclinic-gvnix.rhcloud.com 。

访问我的网站时,我想用欢迎和一些一般信息来欢迎用户。

我将使用示例 gvNIX Petclinic 应用程序来说明我的问题。当您使用https://petclinic-gvnix.rhcloud.com访问此站点时, 您将获得https://petclinic-gvnix.rhcloud.com/login

登录后,您将进入主页:https ://petclinic-gvnix.rhcloud.com 。实际上这是 index.jspx。

看似简单,却找不到答案。

我所做的没有效果的更改是:

视图.xml

将定义 extends=" default " 更改为定义 extends=" public "

<definition extends="public" name="index">
    <put-attribute name="body" value="/WEB-INF/views/index.jspx" />
</definition>

添加到 web.xml

<!-- Index -->
<welcome-file-list>
    <welcome-file>index</welcome-file>
</welcome-file-list>

添加到 applicationContext-security.xml 以下

    <intercept-url access="permitAll" pattern="/index/**" />
    <intercept-url access="permitAll" pattern="/login/**" />

然而它仍然首先进入登录页面。

问题

  1. 当用户未登录时,如何将 index.jspx 页面设为默认主页。
  2. 我在哪里可以阅读/获取有关其工作原理的更多信息?

我阅读了 Ken Rimple 的“Spring in Action”并在 Google 上搜索

4

1 回答 1

1

尝试将root添加到 url 列表:

<intercept-url access="permitAll" pattern="/" />
<intercept-url access="permitAll" pattern="/login/**" />

并还原其他更改

您必须考虑到您正在为url定义规则,并且您可以只允许访问单个页面

还要确保用户可以访问/resources/**.

祝你好运!

于 2015-11-03T12:41:12.480 回答