Я пытаюсь добавить combobox в свою форму. Но в выпадающем списке, вместо имен, что-то еще появляется (как [email protected]) problem screenshotSpring MVC Combobox Issue
Вот мои исходники ...
Мой контроллер:.
@RequestMapping("/tribunekle")
public String addTribune(Model model){
Tribune tribune = new Tribune();
List<Stadium> stadiumList = stadiumService.getAllStadiums();
model.addAttribute("tribune",tribune);
model.addAttribute("stadiumList",stadiumList);
return "tribunekle";
}
@RequestMapping(value = "/tribunekle",method = RequestMethod.POST)
public String addTribunePost(@ModelAttribute("tribune")Tribune tribune, BindingResult result){
if(result.hasErrors()){
return "tribunekle";
}
tribuneService.addTribune(tribune);
return "redirect:/admin/tribunler";
}
Добавить Трибуна JSP:
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@include file="template/adminheader.jsp"%>
<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
<div class="page-header">
<h2>Add tribune>
<p>Yeni tribun ekleyin</p>
</div>
<form:form action="${pageContext.request.contextPath}/admin/tribunler/tribunekle" method="POST" commandName="tribune">
<div class="form-group">
<label for="name">Tribune Name</label><form:errors path="tribuneName" css="color:#ff0000"/>
<form:input path="tribuneName" id="name" class="form-Control"/>
</div>
<div class="form-group">
<label for="stadium">Stadium</label>
<form:select path="stadium" items="${stadiumList}"/>
</div>
<input type="submit" value="Add" class="btn btn-default"/>
<a href="<c:url value="/admin/tribunler"/>" class="btn btn-default">Iptal</a>
</form:form>
</div>
public class Tribune implements Serializable{
private static final long serialVersionUID = -8200937968701786490L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private int tribuneId;
@NotEmpty(message = "Tribune name must not be null")
private String tribuneName;
@ManyToOne
@JoinColumn(name = "stadiumId")
@JsonIgnore
private Stadium stadium;
источник DaoImpl коды
@Autowired
private SessionFactory sessionFactory;
@Autowired
private StadiumService stadiumService;
public void addTribune(Tribune tribune){
Session session = sessionFactory.getCurrentSession();
session.saveOrUpdate(tribune);
session.flush();
}
Вы пытались переопределить метод ToString в своем классе com.project.model.stadium? – RubioRic
Или взгляните на этот вопрос об использовании формы: выберите http://stackoverflow.com/questions/22860381/what-is-formselect-path-in-spring-tag-used-for – RubioRic
@RubioRic спасибо. Теперь имена сокетов появляются в поле со списком. Но когда я нажимаю кнопку отправки, я получаю эту ошибку: не удалось преобразовать значение свойства типа java.lang.String в требуемый тип com.biletdevret.model.Stadium для свойства стадиона; Вложенное исключение - java.lang.IllegalStateException: Невозможно преобразовать значение типа [java.lang.String] в требуемый тип [com.biletdevret.model.Stadium] для свойства стадиона: не найдено подходящих редакторов или стратегия конверсии –