할 수 있는 방법을 호스트.jar 파일 내부에 직접 전쟁에서 Wildfly/JBoss?

StackOverflow https://stackoverflow.com//questions/25048280

  •  21-12-2019
  •  | 
  •  

문제

그래서 나는 아주 간단한 질문입니다.했어요 매우 간단하다.전쟁일 것입니다 행복하게 호스트는 모든 유형의 파일을 나에서 제외.jar 파일입니다.

여기 나의.전쟁 file:

WEB-INF/web.xml:

<?xml version="1.0" encoding="UTF-8" ?> 
  <web-app id="WebApp_ID" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" />

META-INF/나타납니다.MF:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.9.2
Created-By: 1.8.0_05-b13 (Oracle Corporation)

다음과 같은 네 가지 파일이 있습니다.

index.html
folder/jar.jar
folder/jar.zip
folder/index.html

나 배포하는 내 전쟁을 wildfly-8.1.0 의 서버로"testwar.전쟁"이다.을 때 나는 그렇게 액세스할 수 있는 모든 파일을 제외하고 folder/jar.jar 를 통해 완벽하게 정상적인 URL:

http://localhost:8080/testwar/
http://localhost:8080/testwar/folder/
http://localhost:8080/testwar/folder/jar.zip

모든 사람들의 작동합니다.지

http://localhost:8080/testwar/folder/jar.jar

404.

못한 이유를 알아 jar 파일이 보이지 않습니다,또 그것을 해결하는 방법.어떤 생각?

도움이 되었습니까?

해결책

기본 servlet 의 Wildfly/물러 목록이 허용되고 허용 확장자에서 구성할 수 있는 web.xml 을 통해 init 매개 변수입니다. jar 은 허용되지 않는 기본적으로 합니다.

에 다음을 추가하십시오 web.xmljar 확장자:

<servlet>
    <servlet-name>default</servlet-name>
    <servlet-class>io.undertow.servlet.handlers.DefaultServlet</servlet-class>
    <init-param>
        <param-name>default-allowed</param-name>
        <param-value>true</param-value>
    </init-param>
    <init-param>
         <param-name>allowed-extensions</param-name>
         <param-value>jar</param-value>
    </init-param>
    <init-param>
         <param-name>disallowed-extensions</param-name>
         <param-value>exe,bat,sh</param-value>
    </init-param>
</servlet>

다른 팁

JBoss 커뮤니티 스레드

버전 8.1.0의 기본적으로 기본적으로 .jar 파일을 제공하는 것을 거부합니다.Web.xml에 다음 블록을 추가하여 해당 버전을 무시해야합니다 (기본적으로 "jar"은 허용되지 않는 확장자입니다).

<servlet>
      <servlet-name>default</servlet-name>
      <servlet-class>io.undertow.servlet.handlers.DefaultServlet</servlet-class>
       <init-param>
          <param-name>allowed-extensions</param-name>
          <param-value>jar, js, css, png, jpg, gif, html, htm, txt, pdf, jpeg, xml, zip</param-value>
      </init-param>
       <init-param>
          <param-name>disallowed-extensions</param-name>
          <param-value>class, war</param-value>
      </init-param>      
</servlet>
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top