0
서블릿의 seminatic UI 모달 로그인 양식 (home.jsp)에서 사용자 이름과 비밀번호를 가져옵니다. 서블릿은 자격 증명을 확인하고 결과를 home.jsp에 반환합니다. 오류는 동일한 모달로 표시되어야합니다. 이 모달을 여는 로그인 버튼을 다시 클릭하면 표시되는 모달에서 오류 메시지가 처음 실행시 표시되지 않습니다. 첫 번째 실행시이 오류 메시지를 원합니다. 이를 달성하는 방법을 제안하십시오. 아래는 완전한 코드입니다.모달에 로그인 오류 메시지를 표시 할 수 없습니다.
FileBug.java (서블릿)
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Bugzilla bugzilla=Bugzilla.getBugzillaInstance("username", "pass");
try {
//some code
}catch(Exception e)
{
request.setAttribute("errorMessage",e.getMessage());
RequestDispatcher dispatcher = request.getRequestDispatcher("/home.jsp");
dispatcher.forward(request, response);
}
}
home.jsp
<a class="item agenda-item" id="test">
<span class="side-agenda-item"> <i class="bug icon"></i> File a Bug</span>
<div class="ui modal test">
<form action="FileBug" method="post">
<div class="ui segments">
<br>
<h3 align="center" class="header">Bugzilla Login</h3>
<div class="ui container">
<c:if test="${not empty errorMessage}">
<c:out value="${errorMessage}"/>
</c:if>
</div>
<div class="ui segment">
<div class="ui input">
<input type="text" name="username" placeholder="Bugzilla Username" required>
</div>
</div>
<div class="ui segment">
<div class="ui input">
<input type="password" name="password" placeholder="Bugzilla Password" required>
</div>
</div>
<div class="ui segment">
<br>
<button class="ui blue button" id="login">Login</button>
<br><br>
</div>
</div>
</form>
</div>
</a>
스크립트 -
<script>
$(function(){
$("#test").click(function(){
$(".test").modal('show');
});
$(".test").modal({
closable: true
});
});
</script>
<style>
div.ui.modal{
width: 20%;
top: 45%;
left: 75%;
}
div.ui.input {
width: 100%;
}
button#login{
margin: -20px -50px;
position:relative;
top:50%;
left:53%;
}
div.ui.input input {
display: block;
margin: 0 auto !important;
float: none;
}
</style>
을 home.jsp 접근 전에 그것을 을 설정해야하지만, 즉 후 제출 난 단지 사용자가 제공 한 사용자 이름과 암호를 검증 한 후 오류 메시지를 표시해야 그러면 home.jsp에 액세스하기 전에 어떻게 설정해야합니까? 수정해야 할 코드 부분을 설명해주십시오. –
예 ... 따라서 양식에서 양식을 삭제하십시오. 사용자가 양식을 제출하면 세부 사항을 서블릿으로 보낸 다음 요청 변수를 다시 home.jsp로 전달합니다. doPost를 doGet으로 변경 한 다음 url에 간단히 입력 할 수도 있습니다./FileBug –