최초 cafe24에 접속하여 나의 서비스 관리 에 들어간다.

아래의 그림과 같이 나오게 된다 그러면 웹ftp 로 접속 하기를 눌러서 접속을 하자!


자신의 아이디와 암호를 설정하여 로그인을 한다.

ftp로 접속하게 되면 탐색창이 나오는데 tomcat - webapps - ROOT 폴더안에 우리의 파일들을 넣어야 한다.

아래 주황색의 칸은 이클립스나 , STS 의작업공간에서 export를 war파일로 해주면 압축파일 하나가 생성된다

www.war 파일을 압축을 해제 하면 밑에와 같은 폴더들이 생성이 된다.

위 그림에서 생성된 파일들을 빨간색의 ROOT 폴더 안에 덮어 씌어주면 현재 자신이 사용하던 경로를 호출할수 있다.



ex) www.이름.cafe24.com/index.do


블로그 이미지

김진리

,

페이지가 한글깨질 경우(?) 인코딩을 해주어야 하는데 페이지 마다 적용하려면

<%@ page contentType="text/html; charset=utf-8" %> 를 첨가 하였다.

그러나 jsp 2.1 버전 부터 모든 페이지의 인코딩을 web.xml 에서 적용되게 할 수 있다.




블로그 이미지

김진리

,

이클립스 안에서 resource is out of sync with the file system 의 에러가 발생할 경우는

다른곳의 파일을 현재의 프로젝트에 추가 시킬때 발생한다.


이클립스가 항상 refresh 를 하여 파일을 자동으로 체크하게 되게 원한다면.


를 하게 되면 실시간으로 refresh 가 된다.


블로그 이미지

김진리

,

java 에서 httpclient 를 이용하여 데이터를 보낼시 한글이 ?? 로 깨지는 경우가 발생한다.


한글 처리는 java.net 의 URLEncoder 와 URLDecoder 를 이용해 보낼땐 encode, 받을땐 decode 를 하면 한글이 정상 처리됨을 볼 수 있다.


httpclient file post 방식 예제 )


PostMethod post  = new PostMethod("보낼경로");

String filename = URLEncoder.encode("파일이름");

File file = new file(파일경로);

Part[] parts = { new StringPart("보낼 속성 이름",filename),

new FilePart("보낼 속성 이름",file)

};


post.setRequestEntity( new MultipartRequestEntity(parts,filePost.getParams()));

HttpClient client = new httpClient();

int status = client.executeMethod(post);  <- 실제적으로 경로를 실행하게되고 상태 값이 int status 에 저장하게 된다 200 이 return 되면 성공 404 는 페이지를 찾을수 없다


if( status == HttpStatus.SC_OK) {
    200

}






받을시


String temp = URLDecoder.decode( request.getparameter("속성이름"));

한글 파일 이름이 저장이 된다.

블로그 이미지

김진리

,

MultipartRequest는 다운로드시 2기가 가 넘으면 int 범위때문에 에러가 발생한다.

이러한 부분은 보완하기 위해서 다운로드할시 stream으로 쭉쭉 받으면 되겠다.

apache 에서  stream api를 확인해보니 


// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload();

// Parse the request
FileItemIterator iter = upload.getItemIterator(request);
while (iter.hasNext()) {
   
FileItemStream item = iter.next();
   
String name = item.getFieldName();
   
InputStream stream = item.openStream();
   
if (item.isFormField()) {
       
System.out.println("Form field " + name + " with value "
           
+ Streams.asString(stream) + " detected.");
   
} else {
       
System.out.println("File field " + name + " with file name "
           
+ item.getName() + " detected.");
       
// Process the input stream
       
...
   
}
}

라는 예제를 제시하고 있다.

else 부분이 정상적인 파일이 존재 할시이다.


else 부분에 이벤트를.

String path = 저장경로; FileOutputStream fop = new FileOutputStream(new File(저장경로)); Streams.copy(stream, fop, true);


streams.copy를 사용하면 해당 경로에 파일이 쭉쭉~~ stream 방식으로 저장이 되겠다.


블로그 이미지

김진리

,

MultipartRequest  로 업로드를 구현할 시 size 부분에 int 형 자료형만 들어 가게 된다.


그렇게 되면. 용량의 제한은 int 자료형의 범위인  - 2147483648 부터 2147483647 밖에 안되므로 2기가 를 넘지를 못한다.


블로그 이미지

김진리

,

c : 에 설치한 Tomcat 폴더를 복사하여 Tomcat_1 이라고 이름을 주어 생성합니다.

그럼 Tomcat 폴더는 총 2개가 됩니다 .   Tomcat_1 의 Tomcat_1/conf/server.xml 파일에서

<Server port="8006" shutdown="SHUTDOWN">

<Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8444" />

 <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />

저는 빨강색 부분을 원래의 속성 값 + 1씩 하였습니다 .

 

Tomcat_1\bin 폴더 에서 service.bat 파일을 편집으로 열어서

rem set default service name

set service_name = tomcat77   -> 비스명  이자리는 _ 가 등록되지 않습니다.

set pr_displayname= Tomcat_1   -> 서비스에서 나타낼 이름

 

마지막으로 cmd 창을 띄어서

cd : Tomcat7_1\bin 로 이동하신후

service.bat install 을 수행해 줍니다.

 

이제 톰캣을 Run 하실때 각각의 폴더에 해당하는 서비스를 선택하시면 서비스가 실행하게 됩니다.

 

 

블로그 이미지

김진리

,


회원가입과 같은 버튼 만들기


<input type="button" onclick="location.href='경로' "/>

블로그 이미지

김진리

,

Tomcat 안에 있는 servlet.api.jar 파일을 읽어 오지 못하는 경우 이다.




블로그 이미지

김진리

,


game.zip



index.jsp



<%@ page contentType="text/html;charset=euc-kr"%>

<%

String target = request.getParameter("target") + ".jsp";

%>


<html>

<body>

<head><title>모듈화2</title></head>

<table width="500" border="1"  cellpadding="5" align="center">

<tr>

<td colspan="2">

<jsp:include page="include/top.jsp" flush="false" />

</td>

</td>


<tr>

<td valign="top">

<jsp:include page="include/menu.jsp" flush="false"/>

</td>

<td width="80%" valign="middle">

<jsp:include page="<%=target%>" flush="false" />

</td>

</tr>


<tr>

<td colspan="2">

<jsp:include page="include/bottom.jsp" flush="false"/>

</td>

</tr>

</body>

</html>




'개발자 > JSP' 카테고리의 다른 글

input type button 만들기  (0) 2013.03.06
Jsp controller 중 HttpservletRequest 를 읽어 오지 못하는 경우!  (0) 2013.03.06
JSP 사진,파일 upload 예제  (0) 2013.02.01
JSP Enumeration 사용 예제  (0) 2013.02.01
JSP post 전송 폼  (0) 2013.02.01
블로그 이미지

김진리

,