2010-02-18 14 views
5

'de grails yapılandırıldığında ikinci sunucuya erişme Web.xml'de tanımlı diğer uygulamaların yanı sıra bir grails uygulamasına nasıl sahip olabilirsiniz?Web.xml

Diğer URL'ler Sitemesh/grails tarafından ele alınırken bazı URL kalıplarının bir sunucu tarafından işlenmesini sağlamak istiyorum. Sonra benim 2 servlet için web.xml için yapılandırma eklendi

<filter-mapping> 
    <filter-name>charEncodingFilter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
<filter-mapping> 
    <filter-name>grailsWebRequest</filter-name> 
    <url-pattern>/*</url-pattern> 
    <dispatcher>FORWARD</dispatcher> 
    <dispatcher>REQUEST</dispatcher> 
</filter-mapping> 
<filter-mapping> 
    <filter-name>sitemesh</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
<filter-mapping> 
    <filter-name>urlMapping</filter-name> 
    <url-pattern>/*</url-pattern> 
    <dispatcher>FORWARD</dispatcher> 
    <dispatcher>REQUEST</dispatcher> 
</filter-mapping> 

<servlet> 
    <servlet-name>grails</servlet-name> 
    <servlet-class>org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

:

grails tarafından oluşturulan web.xml''deki varsayılan yapılandırması

<servlet> 
    <servlet-name>Tracepoints</servlet-name> 
    <servlet-class>com.mydomain.Tracepoints</servlet-class> 
    <init-param> 
     <param-name>hostName</param-name> 
     <param-value>http://www.mydomain.com/</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>Tracepoints</servlet-name> 
    <url-pattern>*.tpoints</url-pattern> 
</servlet-mapping> 

Ama yukarıda değil benim olmayan grails servlet (url: domain.com/hello.tpoints ile) erişim ve bana bir 404 alır denemeye izin verin. Ben servlet'in sınıf dosyaları savaş ile konuşlandırılmış olduğunu biliyoruz çünkü onlar WEB-INF var/sınıflar dizini.

cevap

0

Grails sunucu uygulamasına eşlemede daha spesifik bir url-pattern vermeniz gerekir, örn. /grails/* veya *.grails ya da öylesine (seçim yapmakta özgürsünüz), böylece yalnızca bu URL'lerle eşleşen URL'ler Grails servletini çağırır.

İlgili konular