Имам приложение за пролет, което работи добре локално, но когато се задейства на външен сървър, се провали със следната грешка:
org.apache.jasper.JasperException: /WEB-INF/jsp/index.jsp(53,28) Форматът на функцията трябва да се използва с префикс, когато не е зададено стандартно пространство от имена org.apache.jasper.compiler.DefaultErrorHandler.jspError (DefaultErrorHandler.java:40) org.apache.jasper.compiler.ErrorDispatcher.dispatch (ErrorDispatcher.java:407) org.apache.jasper.compiler.ErrorDispatcher.jspError (ErrorDispatcher.java:148) org.apache.jasper.compiler.Validator $ ValidateVisitor $ 1FVVisitor.visit (Validator.java:1506) org.apache.jasper.compiler.ELNode $ Function.accept (ELNode.java:129) org.apache.jasper.compiler.ELNode $ Nodes.visit (ELNode.java:200) org.apache.jasper.compiler.ELNode $ Visitor.visit (ELNode.java:242) org.apache.jasper.compiler.ELNode $ Root.accept (ELNode.java:56) org.apache.jasper.compiler.ELNode $ Nodes.visit (ELNode.java:200) org.apache.jasper.compiler.Validator $ ValidateVisitor.validateFunctions (Validator.java:1531) org.apache.jasper.compiler.Validator $ ValidateVisitor.checkXmlAttributes (Validator.java:1176) org.apache.jasper.compiler.Validator $ ValidateVisitor.visit (Validator.java:846) org.apache.jasper.compiler.Node $ CustomTag.accept (Node.java:1530) org.apache.jasper.compiler.Node $ Nodes.visit (Node.java:2361) org.apache.jasper.compiler.Node $ Visitor.visitBody (Node.java:2411) org.apache.jasper.compiler.Validator $ ValidateVisitor.visit (Validator.java:865) org.apache.jasper.compiler.Node $ CustomTag.accept (Node.java:1530) org.apache.jasper.compiler.Node $ Nodes.visit (Node.java:2361) org.apache.jasper.compiler.Node $ Visitor.visitBody (Node.java:2411) org.apache.jasper.compiler.Node $ Visitor.visit (Node.java:2417) org.apache.jasper.compiler.Node $ Root.accept (Node.java:495) org.apache.jasper.compiler.Node $ Nodes.visit (Node.java:2361) org.apache.jasper.compiler.Validator.validateExDirectives (Validator.java:1763) org.apache.jasper.compiler.Compiler.generateJava (Compiler.java:198) org.apache.jasper.compiler.Compiler.compile (Compiler.java:354) org.apache.jasper.compiler.Compiler.compile (Compiler.java:334) org.apache.jasper.compiler.Compiler.compile (Compiler.java:321) org.apache.jasper.JspCompilationContext.compile (JspCompilationContext.java:592) org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:328) org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service (JspServlet.java:260) javax.servlet.http.HttpServlet.service (HttpServlet.java:717) org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel (InternalResourceView.java:238) org.springframework.web.servlet.view.AbstractView.render (AbstractView.java:250) org.springframework.web.servlet.DispatcherServlet.render (DispatcherServlet.java:1060) org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:798) org.springframework.web.servlet.DispatcherServlet.doService (DispatcherServlet.java:716) org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:644) org.springframework.web.servlet.FrameworkServlet.doGet (FrameworkServlet.java:549) javax.servlet.http.HttpServlet.service (HttpServlet.java:617) javax.servlet.http.HttpServlet.service (HttpServlet.java:717)
Това изглежда е така, защото аз наричам този метод, за да получа местоположението на CSS файлове и т.н.:
<link rel="stylesheet" href="${brandBean.getHostedCSSLocation()}style.css"
който е в главата на моята JSP страница. Този метод връща низ:
public String getHostedImageLocation(){
return "http://test.name:9999/Resources/resources/css/";
}
Обектът се предава чрез контролера на страницата.
Има ли нещо, което трябва да инсталирам на този сървър, за да работя така? Изглежда, че обектите не се използват, тъй като те са локално.
Отговори:
0 за отговор № 1Изглежда сървърът, с който се опитвах да стартирам приложението, работи с Tomcat 6 и проста актуализация направи този трик.