Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java spring mobile和apache tiles帮助使用公共元素_Java_Spring_Apache Tiles_Spring Mobile - Fatal编程技术网

Java spring mobile和apache tiles帮助使用公共元素

Java spring mobile和apache tiles帮助使用公共元素,java,spring,apache-tiles,spring-mobile,Java,Spring,Apache Tiles,Spring Mobile,Hi在使用spring mobile配置apache tiles时遇到问题。当iam尝试从mobile访问web应用程序时,它没有显示将在mobile文件夹中的mobile jsp。下面是应用程序配置文件中的代码 AppConfig.Java package com.sasanka.configuration; import java.util.List; import org.springframework.context.annotation.Bean; import org.sprin

Hi在使用spring mobile配置apache tiles时遇到问题。当iam尝试从mobile访问web应用程序时,它没有显示将在mobile文件夹中的mobile jsp。下面是应用程序配置文件中的代码

AppConfig.Java

package com.sasanka.configuration;

import java.util.List;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.mobile.device.DeviceHandlerMethodArgumentResolver;
import org.springframework.mobile.device.DeviceResolverHandlerInterceptor;
import org.springframework.mobile.device.view.LiteDeviceDelegatingViewResolver;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.ViewResolverRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
import org.springframework.web.servlet.view.tiles3.TilesConfigurer;
import org.springframework.web.servlet.view.tiles3.TilesViewResolver;

/**
 * @author M V Prasad
 *
 */
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.sasanka")
public class AppConfig extends WebMvcConfigurerAdapter{

/*  @Bean
    public InternalResourceViewResolver resolver(){
        InternalResourceViewResolver internalResourceViewResolver=new InternalResourceViewResolver();
        internalResourceViewResolver.setPrefix("/WEB-INF/views/");
        internalResourceViewResolver.setSuffix(".jsp");
        //internalResourceViewResolver.setOrder(1);
        return internalResourceViewResolver;

    }*/
    /**
     * Configure TilesConfigurer.
     */
    @Bean
    public TilesConfigurer tilesConfigurer(){
        TilesConfigurer tilesConfigurer = new TilesConfigurer();
        tilesConfigurer.setDefinitions(new String[] {"/WEB-INF/tiles/tiles-defs.xml",
                                                     "/WEB-INF/tiles/homePageViews.xml",
                                                     "/WEB-INF/tiles/lessonViews.xml",
                                                     "/WEB-INF/tiles/mslViews.xml"});
        tilesConfigurer.setCheckRefresh(true);
        return tilesConfigurer;
    }


    @Bean
    public DeviceResolverHandlerInterceptor 
            deviceResolverHandlerInterceptor() {
        return new DeviceResolverHandlerInterceptor();
    }

    @Bean
    public DeviceHandlerMethodArgumentResolver 
            deviceHandlerMethodArgumentResolver() {
        return new DeviceHandlerMethodArgumentResolver();
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(deviceResolverHandlerInterceptor());
    }


    /**
     * Configure ViewResolvers to deliver preferred views.
     */
   @Override
    public void configureViewResolvers(ViewResolverRegistry registry) {
        TilesViewResolver viewResolver = new TilesViewResolver();
        viewResolver.setOrder(0);
        registry.viewResolver(viewResolver);
    }  

@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
    argumentResolvers.add(deviceHandlerMethodArgumentResolver());
}   
 @Bean
 public LiteDeviceDelegatingViewResolver liteDeviceAwareViewResolver() {
     InternalResourceViewResolver delegate = 
             new InternalResourceViewResolver();
     delegate.setPrefix("/WEB-INF/views/");
     delegate.setSuffix(".jsp");

     LiteDeviceDelegatingViewResolver resolver = 
             new LiteDeviceDelegatingViewResolver(delegate);
     resolver.setOrder(0);
     resolver.setMobilePrefix("mobile/");
     resolver.setTabletPrefix("tablet/");
     return resolver;
 }


    /**
     * Configure ResourceHandlers to serve static resources like CSS/ Javascript etc...
     */

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
        registry.addResourceHandler("/static/**").addResourceLocations("/static/");
    }

}
package com.sasanka.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mobile.device.Device;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

import com.sasanka.beans.UserBean;
import com.sasanka.service.UserService;


@Controller
public class HomeController {

    @Autowired
    private UserService userService;

    @RequestMapping(value = { "/", "/home" }, method = RequestMethod.GET)
    public String home(Model model,Device device) {
          return "home";       
    }

}