【问题标题】:Spring MVC weblogic 10.3.6 Error 403-ForbiddenSpring MVC weblogic 10.3.6 错误 403-禁止
【发布时间】:2016-11-21 08:52:24
【问题描述】:

我使用 Spring MVC 3.2.6.RELEASE 和 weblogic 10.3.6 和 Eclipse Juno

当我执行应用程序时,我想去一个控制器并获得一个 jsp。

这是我的 web.xml

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


        <servlet>
            <servlet-name>eusurveyadmin</servlet-name>
            <servlet-class>
                org.springframework.web.servlet.DispatcherServlet
            </servlet-class>
            <init-param>
               <param-name>contextConfigLocation</param-name>
              <param-value>
                /WEB-INF/spring/eusurveyadmin-servlet.xml
            </param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
         <servlet-mapping>
            <servlet-name>eusurveyadmin</servlet-name>
            <url-pattern>/eusurveyadmin/*</url-pattern>
        </servlet-mapping>
         <jsp-config>
        <taglib>
          <taglib-uri>http://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API</taglib-uri>
          <taglib-location>/WEB-INF/Content/esapi.tld</taglib-location>
        </taglib>
        </jsp-config>

         <context-param>
        <param-name>log4jConfigLocation</param-name>
        <param-value>file:ecalcpAdminlog4j.xml</param-value>
       </context-param>

<listener>
    <listener-class>
        eusurvey.listener.Log4jConfigListener</listener-class>
</listener>

 <context-param>
    <param-name>propertiesConfigLocation</param-name>
        <param-value>file://C://OEPEJUNO//user_projects//domains//test38//configuracion.properties</param-value>
   </context-param>
<listener>

    <listener-class>
        eusurvey.listener.CustomContextLoaderListener
    </listener-class>

</listener>
<error-page>
    <error-code>500</error-code>
    <location>/500</location>
</error-page>
<error-page>
    <error-code>404</error-code>
    <location>/404</location>
</error-page>


</web-app>

控制器是 WelcomeController.java

package eusurvey.controller;

import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.List;
import java.util.Locale;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ExceptionHandler;
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 org.springframework.web.servlet.mvc.support.RedirectAttributes;
import org.springframework.web.servlet.view.RedirectView;

import eusurvey.modelA.daos.Preferencia;
import eusurvey.services.PreferencesService;

@Controller
@RequestMapping("/welcome")
public class WelcomeController extends ExceptionsController {
    private static final Logger logger = Logger
            .getLogger(WelcomeController.class);

    @Resource(name = "preferencesService")
    private PreferencesService preferencesService;

    private int a = 0;

    private Preferencia results = null;

    @ModelAttribute("Preferencia")
    public Preferencia fechaUltimaEncuesta() {

        results = preferencesService.consultaPreferencia();
        return results;
    }


    @RequestMapping(value = "/*")
    public String welcome(HttpServletRequest request, ModelMap model) {
        logger.info("WelcomeController welcome");
        results = fechaUltimaEncuesta();
        model.addAttribute("fechaUltimaEncuesta", results.getValor());
        request.getSession().setAttribute("fechaUltimaEncuesta",
                results.getValor());
        String fechaUltimaEncuesta = (String) request.getSession()
                .getAttribute("fechaUltimaEncuesta");
        //return "welcome1";
        return "/menu/pantallaInicio";
    }

    @ExceptionHandler(Exception.class) 
    public ModelAndView handleException(Exception e, Locale locale, HttpServletRequest request) {
        logger.error("WelcomeController handleException "+e.getLocalizedMessage()+" exception "+ e);
        StringWriter sw = new StringWriter();
        PrintWriter pw = new PrintWriter(sw);
        e.printStackTrace(pw);
        String mensajeException = sw.toString(); 

                logger.error("WelcomeController handleException exception "+e.getClass().getSimpleName()+" mensaje "+mensajeException );

          ModelAndView mav = new ModelAndView();
            mav.addObject("exception", e);
            mav.addObject("url", request.getRequestURL());
            mav.setViewName("errores/errorGeneral");
            return mav;

    }

}

当我运行应用程序时出现错误

这是我的 weblogic.xml

<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app
    xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
    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 http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.3/weblogic-web-app.xsd">
    <wls:weblogic-version>10.3.6</wls:weblogic-version>
    <wls:context-root>EcalpAdmin</wls:context-root>
    <wls:container-descriptor>
        <wls:prefer-web-inf-classes>true</wls:prefer-web-inf-classes>
    </wls:container-descriptor>
</wls:weblogic-web-app>

如何编写 web.xml 才能进入控制器?

【问题讨论】:

  • localhost:7001/EcalpAdmin 将不起作用。 EcalpAdmin 不是您的根上下文

标签: spring-mvc http-status-code-403 weblogic-10.x


【解决方案1】:

您在班级级别的 RequestMapping 似乎是 /welcome。任何方法级别的 RequestMapping 都将与此相关。所以你的网址应该是http://localhost/EcalpAdmin/welcome

【讨论】:

    猜你喜欢
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 2018-10-31
    • 2014-09-29
    • 1970-01-01
    • 2020-07-31
    • 2018-01-14
    • 2018-11-03
    相关资源
    最近更新 更多