0

私はstackoverflowで他の解決策を見てきましたが、それは役に立ちません。私は同じことをしていますが、なぜそれが私のために機能しないのかわかりません。

ubuntuマシンの/home/ imagesフォルダーに画像をアップロードしており、spring-servlet.xmlに次の行を書き込んでいます。

  <mvc:resources mapping="/resources/**" location="/resources/" /> 

<mvc:resources mapping="/images/**" location="file:/home/images/"/>
<mvc:default-servlet-handler/>

画像は/home/ images /フォルダにアップロードされていますが、これらの画像にアクセスできません

JSPで私は書いた

   <img src="/images/image.jpg"/>

しかし、この画像が表示されていないので、ここでの問題はわかりません。他に必要なことがあれば教えてください。

- -アップデート - -

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.1.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">



<context:annotation-config />   

<context:component-scan
    base-package="com.mycom.myproject" />

<!-- Enable annotation driven controllers, validation etc... -->
<mvc:annotation-driven />

<mvc:resources mapping="/resources/**" location="/resources/" /> 

<mvc:resources mapping="/images/**" location="file:/home/images/"/>
<mvc:default-servlet-handler/>



<!-- Declare a datasource that has pooling capabilities -->
<bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close" p:driverClass="com.mysql.jdbc.Driver"
p:jdbcUrl="jdbc:mysql://localhost/dbtest" p:user="root" p:password="root"
p:acquireIncrement="10" p:idleConnectionTestPeriod="60" p:maxPoolSize="100"
p:maxStatements="50" p:minPoolSize="10" />
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
p:dataSource-ref="datasource" />


<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="datasource" />
</bean>

<!-- scan for mappers and will automatically scan the whole classpath for xmls -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <property name="sqlSessionFactory" ref="sqlSessionFactory" />
    <property name="basePackage" value="com.mycom.myproject.db.mybatis.dao" />
</bean>  

<!-- Configure the multipart resolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!-- one of the properties available; the maximum file size in bytes -->
    <property name="maxUploadSize" value="100000"/>
</bean> 

<bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView"
   p:extractValueFromSingleKeyModel="true" />

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass"
        value="org.springframework.web.servlet.view.JstlView" />
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    <property name="basename" value="classpath:project-config" />
</bean>

Web.xml

 <servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>*.htm</url-pattern>
</servlet-mapping>

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        /WEB-INF/spring-servlet.xml,
        /WEB-INF/spring-security.xml
    </param-value>
</context-param>


<!-- Spring Security -->
<filter>
    <filter-name>springSecurityFilterChain</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

 <session-config>
    <session-timeout>
        30
    </session-timeout>
</session-config>
4

1 に答える 1

3

oooook、ディスパッチャサーブレットは.htmにマップされているため、ディスパッチャサーブレットは呼び出されません。これは、これらの/ resources / *リクエストを処理し、ResourceHttpRequestHandlerを呼び出して静的コンテンツを書き込むためです。

于 2012-09-11T14:37:00.753 に答える