'The server cannot be started because one or more of the ports are invalid. Open the server editor and correct the invalid ports.'

 

새로운 스프링 프로젝트를 생성 및 등록하고 톰캣을 실행하려고 하니 해당 에러가 발생했습니다.
실행시킨 톰캣의 포트가 유효하지 않아 발생된 에러로 아래와 같이 해결해 주시면 됩니다.

 

 

1. 'Server' 탭의 톰캣 더블클릭 

 

 

2. 'Ports'의 'Tomcat admin port' 및 'HTTP/1.1' 포트가 입력 됬는지 확인

 -> 보통 새로 설정 하면 'Tomcat admin port'가 '-' 로 설정되있는 경우가 있어 위의 에러가 발생 합니다.

 

 

 

3. 정상적으로 실행된 톰캣입니다.

 

스프링 프로젝트를 생성하고 jsp 파일에 The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 에러가 발생 하였습니다.

프로젝트 runtime을 위해 톰캣을 추가 해주고, Dynamic Web Module, Java, JS 의 버전을 같이 수정 해주세요.

 

* 프로젝트 우클릭 -> Properties -> Project Facets -> 아래 그림 2-1을 참고 해주세요

 

그림 2-1

Spring 프로젝트를 구동하기 위해 톰캣을 추가 하려 할 때 'The name is already in use. Specify a different name.'

에러가 발생 했습니다.

보통 서버를 추가 했다 삭제 했을때 'org.eclipse.wst.server.core' 파일에 반영이 제대로 되지 않았을 때 발생합니다.

 

{workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings 경로에 접근하여 'org.eclipse.wst.server.core'

파일을 삭제 하거나 아래처럼 삭제 되지 않은 서버를 지워주세요.

 

 

스프링 프로젝트를 구동 시키기 위해 톰캣 서버에 프로젝트를 추가 하려고 하는데 아래와 같은 에러가 발생 했습니다.

'Tomcat version 8.5 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5, 6, and 7 Web modules '

해당 에러는 톰캣, 자바, 웹 모듈 버전 등 서버 관련 버전이 맞지 않기 때문입니다.

저 같은 경우는 servlet 4.0을 사용하려고 헀는데 톰캣 8.5를 사용 하기 때문에 발생 했습니다.  

 

위의 표를 확인하고 프로젝트 생성 전에 버전을 맞추시거나, Project Facets에서 버전을 수정해주시면 됩니다.

INFO: Error parsing HTTP request header Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.

해당 에러 발생시 tomcat 의 server.xml 파일에서 해당 리스너를 추가 후 재시작 해주시면 됩니다.

 

*리눅스 환경에서는 

/tomcat/conf 경로에 있습니다.

 

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on"/>

 

 

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on"/>

 

스프링 프로젝트에 톰캣을 설정하려고 합니다.

참고하시는 분들의 PC에 이미 톰캣이 설치 되어 있다고 가정하겠습니다.(in Program Files or anywhere)





이클립스에서 프로젝트를 생성 하듯이 File -> New -> server 검색을 하고 다음 버튼을 눌러주세요.









준비하신 톰캣의 버젼에 맞게 선택 해주세요. 저는 8.0버전이라 Tomcat v8.0 Server를 선택 하였습니다. 그리고 다음 버튼을 눌러주세요.










Tomcat Installation Directory 는 준비하신 톰캣 폴더로 정해주시고,

JRE에는 해당 프로젝트에서 사용하실 jdk 로 정해주시면 됩니다. 그리고 Finish 버튼을 눌러주세요.








서버 생성은 완료 되었고 웹 서버 사용이 필요하신 프로젝트를 서버 작동을 위해 포함 해주세요.









그리고 생성된 서버의 server.xml 파일에서 path를 "/" 로 바꿔주세요.

물론 사용하시는 분에 따라서 해당 내용은 변경되야 할 필요가 있습니다.






java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException

에러는 pom.xml 이나 web.xml 잘 못 건드렸을떄, 또는 아무런 이유없이... 발생 됩니다.

(세개 모두 직접 겪어 봤습니다ㅠㅠ)


이 에러를 해결하기 위해서 이 방법들을 사용했습니다.

이 순서로 한 번 진행 해보세요




1. 프로젝트를 clean 해줍니다.

   * 상단 메뉴 -> 'Project' -> 'Clean' -> All projects or 해당 프로젝트 선택


2. Tomcat server를 Clean

   * Server 의 동작을 원하는 서버를 선택 후 우클릭 하시면 clean 메뉴가 있습니다.


3. 현재 사용중이 Tomcat 폴더의 servlet-api.jar을 사용중인 jdk lib에 붙여넣습니다.

   * 


4. Maven Repository의 javax servlet를 삭제 후 업데이트 합니다.


5. Maven Repository의 모든 폴더 삭제 후 업데이트 합니다. 

   * 프로젝트 -> 우클릭 -> Maven -> Update Project


6. javax.servlet-api 버젼을 3.1.0 으로 설정

   * pom.xml 에서 해당 dependency  에서 설정 해주면 됩니다.


7. 톰캣 폴더를 통째로 삭제 후 재설치




저는 이 방법을 사용 했을때 다행이도 해결이 되었습니다.

다른 분들도 꼭 해결 하시길... 바랍니다 :-)


+ Recent posts