Member 14639038 Ответов: 0

Javax.servlet.jsp.jspexception: тип [java.lang.string] недопустим для элементов опций


я разрабатываю весеннее веб-приложение mvc.

когда я выполняю страницу:
возникает следующее исключение:
javax.servlet.jsp.JspException: Type [java.lang.String] is not valid for option items



вот этот код:
дома.ОСП
----------
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
    
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form:form action="processLogin" modelAttribute="user">
<form:select path="userType">
<form:options items="${user.userTypes}"/>
</form:select>
<br>
<form:input path="userId"/>
<br>
<form:input path="password"/>
<br>
<input type="submit" value="submit"/>
</form:form>

</body>
</html>



Домашний контроллер:
package com.rec.controller;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;

import com.rec.model.UserDetails;

@Controller
@RequestMapping("/home")
public class HomeController {

	private static Logger log  = Logger.getLogger(HomeController.class);
	@RequestMapping("/showForm")
	public String Home(Model model)
	{log.info("Home Controller");
     UserDetails user= new UserDetails();
     model.addAttribute("user", user);
		return "Home" ;
		
		
	}
	
	
	@RequestMapping("/processLogin")
	private String processForm(@ModelAttribute("user")UserDetails theUser)
	{
		return "Discom-user-page.jsp";
		
		
	}
}


Что я уже пробовал:

<form:select path="userType">
<form:option items="${user.userTypes}"/>
</form:select>

Sandeep Mewara

Где находится код для: user.userTypes => Это коллекция?

Richard MacCutchan

Код утверждает, что items-это набор опций, но ваш код передает простую строку.

0 Ответов