2013-04-01 2 views
-2

jsp 페이지를 간단한 Java 클래스에서 호출하고 싶습니다. 요청 개체가없는 것입니다. 서블릿을 사용하지 않고. 그냥 자바 클래스에서 jsp 페이지로 전달합니다.서블릿을 사용하지 않고 Java 클래스에서 jsp 페이지를 호출하는 방법

+0

??? 당신은 말한다 : "나는 어떤 요청 객체도 가지지 않는다."하지만 요청과 응답은 암묵적인 객체이다. 당신은 항상 그것들을 가질 것이다. 그래서 무엇을하고 싶니? –

+1

실제로 모든 .jsp 파일은 서블릿을 준수하므로 호출하려면'HttpRequest'와'HttpResponse' 객체가 있어야합니다 – bsiamionau

+0

HTTPGet 또는 HTTPPost 호출을합니다 –

답변

1

내가 잘못 이해하지 못했다면, 자바 클래스를 통해 브라우저에서 열 수있는 JSP 페이지를 찾고 계십니까? 예인 경우 데스크톱 API를 사용할 수 있습니다.

당신은 또한 다음과 같은 답변에 볼 수 있습니다

Open local html page - java

당신의 JSP 페이지가 웹 컨테이너에 배치해야합니다 또한 염두에 두어야 Getting java gui to open a webpage in web browser

(등 톰캣)과 그 실행 또는 호출 될 때 JSP가 열리지 않는 이유를 알아낼 수 있습니다.

+0

네, 맞습니다. –

+0

어떻게 내가 그것을 사용할 수 있습니다, 조금 더 설명해주세요, –

+0

네, 지금은 작동하지만, 자바 응용 프로그램이기 때문에 나는 브라우저에서 열리지 않기를 원합니다, 나는 그저 이클립스 자체에서 열리고 싶습니다. . 어떻게 할 수 있습니까? –

1

먼저은 JSP 페이지에서 자바 클래스를 호출합니다 : 이 클래스에서 인스턴스를 인스턴스화해야합니다.

예를 들어

: 당신이 "MyClass에"과 JSP라는 클래스가 MyClass의 전직 당신의 JSP 페이지 가져 오기에 다음 "home.jsp" 라는이있는 경우, 페이지 @ < 수입 = "yourpackagename.yourclassname"> 그러면 본문 부분에서 my1.callyourfunction();을 입력하여 클래스의 인스턴스를 인스턴스화합니다.

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1" import="yourpackagename.myclass"%> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>home.jsp</title> 
</head> 
<body> 
    <% 
     myclass my1 = new myclass(); 
     my1.Openpage(response); 
    %> 
</body> 
</html> 

둘째은 자바 클래스의 JSP를 호출 : : 다음과 같은 당신은 다음과 같은 HttpServletResponse를를 사용해야합니다 : 앞으로 어떤

package yourpackagename.myclass; 

import java.io.IOException; 
import javax.servlet.http.HttpServletResponse; 

public class myclass{ 
public void Openpage(HttpServletResponse res) throws IOException{ 
    // here type your JSP page that you want to open 
    res.sendRedirect("To.jsp"); 
    } 
} 
관련 문제