weblogic服务器中的百里香登录错误

Posted

技术标签:

【中文标题】weblogic服务器中的百里香登录错误【英文标题】:thymeleaf login error in weblogic server 【发布时间】:2018-05-07 01:38:28 【问题描述】:

我正在尝试从 IntelliJ 登录我的应用程序,并且一切正常!但是当我将相同的程序部署到 weblogic 服务器时,我无法登录系统。在 weblogic 日志中;

<The exception "The request content-type is not a multipart/form-data" occurred when processing getParameter or getParameterValues from a multipart value of a ServletRequest.> 
<The exception "The request content-type is not a multipart/form-data" occurred when processing getParameter or getParameterValues from a multipart value of a ServletRequest.> 
<The exception "The request content-type is not a multipart/form-data" occurred when processing getParameter or getParameterValues from a multipart value of a ServletRequest.> 
<The exception "The request content-type is not a multipart/form-data" occurred when processing getParameter or getParameterValues from a multipart value of a ServletRequest.>

这是我的html表单;

<form class="col s12" action="#" th:action="@/admin/login" method="post">
    <div class="row">
        <div class="input-field col s6 offset-s3">
            <input name="username" id="first_name" type="text" class="validate">
            <label for="first_name">user:</label>
        </div>
    </div>

    <div class="row">
        <div class="input-field col s6 offset-s3">
            <input name="password" id="password" type="password" class="validate">
            <label for="password">pass:</label>
        </div>
    </div>

    <button class="btn waves-effect waves-light col s2 offset-s3 cyan" type="submit" name="action">
        login <i class="material-icons right">send</i>
    </button>
</form>

这里是登录控制器;

@RequestMapping(value = "admin/login")
public String liste() 
    return "login";

截图:

请求地址:http://localhost:7001/Avantaj/admin/login请求 方法:POST 状态码:302 临时移动到远程 地址:[::1]:7001 推荐人策略:no-referrer-when-downgrade 响应 标题查看源日期:2017 年 11 月 23 日星期四 12:48:17 GMT 地点:http://localhost:7001/Avantaj/admin/home Transfer-Encoding:chunked Request Headers 查看源代码 接受:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8 接受编码:gzip、deflate、br 接受语言:tr-TR,tr;q=0.9,en-US;q=0.8,en;q=0.7 缓存控制:无缓存连接:保持活动内容长度:80 内容类型:application/x-www-form-urlencoded Cookie:JSESSIONID=1ED30C816EF25AC17194374E770CD346; 詹金斯时间戳偏移=-10800000;詹金斯时间戳=系统; 詹金斯-时间戳-本地=假; Idea-1d074cc6=2bd3bbfa-1a60-4e9f-9163-645455c02386; ADMINCONSOLESESSION=Gk_o3QryHWiuNVoJJ0051hq_HIeAT52n6Ug8XuuZLXcdYm-DpXUj!1056880247; JSESSIONID=yqXo68oDWhjpgd-mxzd3JS4ZnL50ELUOTGOteLOimAWgcWyH1n7K!1056880247 主机:localhost:7001 来源:http://localhost:7001 Pragma:no-cache 推荐人:http://localhost:7001/Avantaj/admin/login 升级不安全请求:1 用户代理:Mozilla/5.0(Windows NT 6.1; WIN64; x64) AppleWebKit/537.36 (KHTML, 像 Gecko) Chrome/62.0.3202.94 Safari/537.36

secodPage:管理员/主页

请求地址:http://localhost:7001/Avantaj/admin/home请求 方法:GET 状态码:302 临时移动远程地址:[::1]:7001 推荐人政策:no-referrer-when-downgrade 响应标头视图 source Cache-Control:no-cache, no-store, max-age=0, must-revalidate 连接:关闭日期:2017 年 11 月 23 日星期四 14:31:25 GMT 过期时间:0 位置:http://localhost:7001/Avantaj/admin/login Pragma:no-cache Set-Cookie:JSESSIONID=GirpSlveeYkuHjDH1Zww-WBtIaAjheHEgpkbWOSN1N6TEJzxLPag!-542853697; 路径=/; HttpOnly Transfer-Encoding:chunked Request Headers 查看源码 接受:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8 接受编码:gzip、deflate、br 接受语言:tr-TR,tr;q=0.9,en-US;q=0.8,en;q=0.7 缓存控制:无缓存连接:保持活动 Cookie:JSESSIONID=3996AB4039DC5F2230033D6B816C498F; 詹金斯时间戳偏移=-10800000;詹金斯时间戳=系统; 詹金斯-时间戳-本地=假; Idea-1d074cc6=2bd3bbfa-1a60-4e9f-9163-645455c02386; ADMINCONSOLESESSION=Z_npKvR7H0hvii2TSvKQP086Yty0sxE3GYm9GYt3m8V-8b7UG***!-542853697; JSESSIONID=kYrpSjqm-XZ659r5LdoROvvp9NS5T8OC0MlQEJaIdrS2R5OSKAHg!-542853697 主机:本地主机:7001 杂注:无缓存 推荐人:http://localhost:7001/Avantaj/admin/login 升级不安全请求:1 用户代理:Mozilla/5.0(Windows NT 6.1; WIN64; x64) AppleWebKit/537.36 (KHTML, 像 Gecko) Chrome/62.0.3202.94 Safari/537.36

springSecurityConfig:

@Override
protected void configure(HttpSecurity http) throws Exception 
    enhancer.addRecaptchaSupport(http.formLogin()).loginPage("/admin/login").permitAll()
        .and().csrf().ignoringAntMatchers("/api/**")
        .and().authorizeRequests().antMatchers("/admin/**").fullyAuthenticated()
        .and().headers().defaultsDisabled().cacheControl();

【问题讨论】:

【参考方案1】:

尝试:

@PostMapping("/admin/login")
public String liste() 
  return "login";

并以您的形式:

<form class="col s12" action="#" th:action="@/admin/login" method="post">
...

【讨论】:

我改了,但问题依旧。 尝试将此添加到您的表单 html 标记中:enctype="multipart/form-data" 我也更新了答案 谢谢你,我的朋友,我试过了,但没用。请求的 content-type 不是 multipart/form-data 好的,最后一次尝试,我已经用另一种方法更新了答案,你也可以看看this example【参考方案2】:

weblogic 服务器出现问题。我在 weblogic.xml 文件中添加了一些定义。这样问题就解决了。

    <wls:session-descriptor>
        <wls:cookie-path>/myApplicationPath</wls:cookie-path>
    </wls:session-descriptor>

【讨论】:

以上是关于weblogic服务器中的百里香登录错误的主要内容,如果未能解决你的问题,请参考以下文章

如何将对象列表绑定到百里香中的复选框?

如何使用百里香获取输入用户名的值?

带有转换的特殊字符的百里香错误消息

如何控制百里香中的href属性

百里香中的for循环

如果在百里香中选中复选框,如何更改布尔值?