javascript

git

python

java

github

django

c#

reactjs

loops

git-remote

terminology

list

local-storage

pandas

performance

system.out

git-reset

regex

email

string-parsing

获取JSP中转发的请求URL

如何在Servlet转发的JSP中获取请求URL?

如果我在JSP中运行以下代码,

System.out.println("servlet path= " + request.getServletPath());
System.out.println("request URL= " + request.getRequestURL());
System.out.println("request URI= " + request.getRequestURI());

然后我获得了JSP的服务器端路径。 但是我想获取该URL,就像您在浏览器的地址栏中看到的那样。 我可以在转发到JSP的Servlet中获得它,但是我想在JSP中获得它。

trans by 2020-08-11T22:50:06Z

java-如何在<form:input>的属性内使用<spring:message>?

我有类似的JSP代码:

<div class="formRow">
    <form:input id="email_email" name="email_email" title="XXXXX"/>" path="email" cssClass="input required email" />
    <form:errors path="email" cssClass="error" />
</div>

我想用一些工具提示文本设置title属性,以支持i18n。 我该怎么做?

我正在寻找做这样的事情:

<div class="formRow">
    <form:input id="email_email" name="email_email" title="<spring:message code="tooltip.text" />"/>" path="email" cssClass="input required email" />
    <form:errors path="email" cssClass="error" />
</div>
trans by 2020-08-11T04:25:02Z

如何使用JSTL / EL从JSP调用参数化方法

如何使用JSTL / EL从JSP调用带有在Java类中定义的参数的Java方法。 该方法返回数组。 可以使用任何返回值。

trans by 2020-08-11T01:10:04Z

java-在JSP EL表达式中获取Spring Security Principal

我正在使用Spring MVC和Spring Security版本3.0.6.RELEASE。 在我的JSP中获取用户名的最简单方法是什么? 甚至只是用户是否已登录? 我可以想到几种方法:

1.使用脚本

使用如下脚本来确定用户是否已登录:

<%=org.springframework.security.core.context.SecurityContextHolder.getContext()
    .getAuthentication().getPrincipal().equals("anonymousUser")
    ? "false":"true"%>

不过,我不喜欢使用scriptlet,我想在一些@Controller标签中使用它,这需要将其作为页面属性放回去。

2.使用SecurityContextHolder

我可以再次使用@Controller中的SecurityContextHolder并将其放在模型上。 不过,我在每个页面上都需要此逻辑,因此我宁愿不必在每个Controller中都添加此逻辑。

我怀疑有更干净的方法可以做到这一点...

trans by 2020-08-10T13:18:58Z

java-在JSP中重定向页面?

我必须在jsp中设计几个页面。单击第一页上的提交按钮后,该页面应自动重定向到第二页。

您能否提供快速示例或指向演示该操作方法的教程的链接?

trans by 2020-08-10T05:01:58Z

jsp-检查表达式语言中是否存在参数

这个问题已经在这里有了答案:

  • 评估空或空的JSTL c标签 8个答案
<c:if test="${param.username}" >
</c:if>

如何检查param.username是否存在?

trans by 2020-08-09T22:47:42Z

jstl-JSP中存在检查属性

我有一些扩展超类的类,在JSP中,我想显示这些类的某些属性。 我只想制作一个JSP,但我事先不知道对象是否具有属性。 因此,我需要一个JSTL表达式或一个标记来检查我传递的对象是否具有该属性(类似于javascript中的in运算符,但在服务器中)。

<c:if test="${an expression which checks if myAttribute exists in myObject}">
    <!-- Display this only when myObject has the atttribute "myAttribute" -->
    <!-- Now I can access safely to "myAttribute" -->
    ${myObject.myAttribute}
</C:if>

我怎么能得到这个?

谢谢。

trans by 2020-08-09T18:29:16Z

java-如何通过Spring安全性有条件地向登录用户显示jsp内容

我想向任何已登录的用户显示内容,并在未登录的情况下隐藏它们。我正在使用jsp和spring安全性。

显然,自行解决方案很容易做到。 但是实现这一目标的最干净的标准方法是什么?

Spring安全性标签似乎没有很好的方法来允许将来添加新角色。

trans by 2020-08-09T05:22:12Z

javax.servlet.jsp.PageContext无法解析为典型

这个问题已经在这里有了答案:

  • 如何在Eclipse项目中导入javax.servlet API? 15个答案

我在jsp页面中看到以下错误-

javax.servlet.jsp.PageContext cannot be resolved to a type
javax.servlet.jsp.JspException cannot be resolved to a type

我看到了有关此内容的文章,并尝试了一些建议的方法。 BalusC提供了很好的输入-JSTL1.2和Standard.jar不能一起使用。 我做到了,它解决了一段时间的问题-但它又出现了。 我不确定是否还有罐子碰撞。 我已经将所有jar定义为Maven中的依赖项。 下面是我指定的依赖项pom.xml-

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>1.2.1</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
    </dependency>
    <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jsch</artifactId>
        <version>0.1.38</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.15</version>
        <exclusions>
            <exclusion>
                <groupId>javax.jms</groupId>
                <artifactId>jms</artifactId>
            </exclusion>
            <exclusion>
                <groupId>com.sun.jmx</groupId>
                <artifactId>jmxri</artifactId>
            </exclusion>
            <exclusion>
                <groupId>com.sun.jdmk</groupId>
                <artifactId>jmxtools</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>commons-configuration</groupId>
        <artifactId>commons-configuration</artifactId>
        <version>1.6</version>
    </dependency>
    <dependency>
        <groupId>org.apache.tiles</groupId>
        <artifactId>tiles-jsp</artifactId>
        <version>2.2.2</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.5.6</version>
    </dependency>

</dependencies>
trans by 2020-08-08T16:55:16Z

java-<required>和<rtexprvalue>有什么用途?

我当时正在研究自定义标签库,但对在TLD文件中使用3000611824715715957248和<rtexprvalue>标签定义自定义标签属性感到困惑。

  1. 这些标签是什么?
  2. 我们应该在它们之间写些什么?
  3. 编写这些标签后,我们会得到什么行为?
trans by 2020-08-07T08:15:20Z

jsp-如何更改TOMCAT使用的Java版本?

我的系统上安装了Java 1.6和Tomcat 5.5。

但是Tomcat 5.5访问Java 1.5,因此,在使用JSP执行Java代码时,出现了错误Bad version in .class file

如何将Tomcat版本更改为Java 1.6?

更新

我尝试更改tomcat5w.exe指向版本1.6的JVM,现在出现了Bad version in .class file错误。 但是现在,我收到以下错误。

exception

org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

root cause

java.lang.NullPointerException
myfirst.SearchLink.checkURL(SearchLink.java:20)
org.apache.jsp.Test_jsp._jspService(Test_jsp.java:52)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

根本原因可能是什么?

trans by 2020-08-02T06:33:42Z

java-如何在JSP页面中使用会话获取信息?

我有一个用于编辑某些用户信息的JSP页面。 用户登录网站时,我会将信息保留在会话中,然后在我的编辑页面中尝试以下操作:

<%! String username=session.getAttribute("username"); %>
<form action="editinfo" method="post">
    <table>
        <tr>
            <td>Username: </td><td> <input type="text" value="<%=username %>" /> </td>
        </tr>
    </table>
</form>

但出现错误,表明会话无法解决。 我该怎么办?

trans by 2020-07-27T06:33:21Z

java-使用request.getRemoteAddr()返回0:0:0:0:0:0:0:0

我正在尝试在我的webApplication中打印登录用户的IP地址。 如果用户使用IP地址192.168.10.120:8080/WebApplication从另一台PC(与该Web应用程序在同一网络中运行)连接,则代码request.getRemoteAddr()request.getLocalAddr())返回其IP地址。 当我从运行Web应用程序的PC登录时,得到的IP地址为0:0:0:0:0:0:0:0:1。

这是为什么? 这些命令之间有什么区别(我应该使用哪个?)。非常感谢!

trans by 2020-07-23T19:42:34Z

java-根据JSTL的密钥从哈希图中获取值

我想基于密钥获取Property 'External' not found on type java.util.HashMap$Entry的值。

HashMap<String, ArrayList<String>> map 
    = new HashMap<String, ArrayList<String>>();
ArrayList<String> arrayList = new ArrayList<String>();

map.put("key", arrayList);
request.setAttribute("key", map);

我所做的是

<c:forEach var="map" items="${requestScope.key}">
    <c:forEach var="hash" items="${map.value}">
        <option><c:out value="${hash}"/></option>
    </c:forEach>
</c:forEach>

但似乎它正在打印所有内容,我想做的就是获取价值取决于键:Property 'External' not found on type java.util.HashMap$Entry

更新:
我做了这样的事情,但还是没用

<c:forEach var="map" items="${requestScope.key}">
    <c:forEach var="hash" items="${map['key']}">
        <option><c:out value="${hash}"/></option>
    </c:forEach>
</c:forEach>

和StackTrace:Property 'External' not found on type java.util.HashMap$Entry
我很确定确实有这种钥匙。

trans by 2020-07-20T07:39:59Z

jsp-Eclipse RCP插件+嵌入式Jetty + JSF

我使用嵌入式Jetty制作了一个RCP插件,如下所示:

1)在plugin.xml->依赖项中,我添加了以下内容:

org.eclipse.equinox.http.jetty
org.eclipse.equinox.http.registry
org.mortbay.jetty.server
javax.servlet

2)在plugin.xml->扩展中,我添加了一个Servlet扩展点(org.eclipse.equinox.http.registry.servlet)

class: TemperatureServlet
alias:/temperature

TemperatureServlet看起来像这样:

import java.io.IOException;

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

public class TemperatureServlet extends HttpServlet {

    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {

        System.out.println("doGet Called");

        resp.sendRedirect("Convertor.jsp");
    }
}

文件Convertor.jsp如下所示:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="f"  uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h"  uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<f:view>
<h:form>
        <h:panelGrid columns="2">
            <h:outputLabel value="Celsius"></h:outputLabel>
            <h:inputText  value="#{temperatureConvertor.celsius}"></h:inputText>
        </h:panelGrid>
        <h:commandButton action="#{temperatureConvertor.celsiusToFahrenheit}" value="Calculate"></h:commandButton>
        <h:commandButton action="#{temperatureConvertor.reset}" value="Reset"></h:commandButton>
        <h:messages layout="table"></h:messages>
    </h:form>


    <h:panelGroup rendered="#{temperatureConvertor.initial!=true}">
    <h3> Result </h3>
    <h:outputLabel value="Fahrenheit "></h:outputLabel>
    <h:outputLabel value="#{temperatureConvertor.fahrenheit}"></h:outputLabel>
    </h:panelGroup>
</f:view>
</body>
</html>

文件faces-config.xml包含:

<?xml version="1.0" encoding="UTF-8"?>

<faces-config
 xmlns="http://java.sun.com/xml/ns/javaee"
    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-facesconfig_2_0.xsd"
    version="2.0">  
    <managed-bean>
        <managed-bean-name>temperatureConvertor</managed-bean-name>
        <managed-bean-class>hellojsf.TemperatureConvertor</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>

</faces-config>

我的插件具有以下层次结构:

plugin-name
---src
------class package
---------Activator.java
---------Application.java
---------ApplicationActionBarAdvisor.java
---------ApplicationWorkbenchWindowAdvisor.java
---------Perspective.java
---------TemperatureConvertor.java
---------TemperatureServlet.java
---META-INF
------MANIFEST.MF
---resources
-------WebContent
----------WEB-INF
-------------faces-config.xml
-------------web.xml
----------Convertor.jsp
---plugin.xml

在Activator类的start()方法中,我已经像这样启动了Web服务器:

public void start(BundleContext context) throws Exception {
        super.start(context);
        plugin = this;

        Bundle bundle = Platform.getBundle("org.eclipse.equinox.http.registry");
        if (bundle.getState() == Bundle.RESOLVED) {
            bundle.start(Bundle.START_TRANSIENT);
        }

        Dictionary settings = new Hashtable();
        settings.put("http.enabled", Boolean.TRUE);
        settings.put("http.port", 8080);
        settings.put("http.host", "0.0.0.0");
        settings.put("https.enabled", Boolean.FALSE);
        settings.put("context.path", "/");
        settings.put("context.sessioninactiveinterval", 1800);

        try {
            JettyConfigurator.startServer(PLUGIN_ID + ".jetty", settings);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

在此插件中,我还添加了以下库:

  • JSTL:javax.servlet.jsp.jstl-1.2.1-javadoc.jar;javax.servlet.jsp.jstl-api-1.2.1-javadoc.jar
  • JSF 2.0(Apache MyFaces JSF Core-2.0 API 2.0.2)

启动应用程序后,如果输入浏览器本地主机:8080 /温度

它不知道在哪里可以找到Convertor.jsp。我的问题是:如何配置此插件以了解WebContent的资源位置,最重要的是,如何配置该插件以了解如何处理JSF并了解Faces-config.xml和web.xml。

例如,当我定义扩展名org.eclipse.equinox.http.registry.servlets时,可以这样做吗?类:javax.faces.webapp.FacesServletalis:/*.jsp

(所有文件* .jsp将由FacesServlet处理)?

非常感谢您,如果问题很愚蠢,对不起,但是我是RCP插件Jetty和JSF领域的新手。

trans by 2020-07-19T14:25:11Z

字符串-如何使用JSP和JSTL替换换行符?

我有一个传递给我的JSP页面的Bean对象的列表,其中之一是注释字段。 该字段可能包含换行符,我想使用JSTL将其替换为分号,以便可以在文本输入中显示该字段。 我找到了一种解决方案,但这不是很好。 我将在下面发布作为一种可能性。

trans by 2020-07-14T03:17:07Z

jsp-如何比较EL表达式语言中的两个对象变量?

我正在创建所有语言的下拉列表。 列表的默认语言选择将由用户添加的信息决定:

<select>
    <c:forEach items="${languages}" var="lang">
        <c:choose>
            <c:when test="${lang}.equals(${pageLang})">
                <option value="${lang}" selected>${lang}</option>
            </c:when>
            <c:otherwise>
                <option value="${lang}">${lang}</option>
            </c:otherwise>
        </c:choose>
    </c:forEach>
</select>

.equals在EL中似乎不存在。 看过这里,建议我编写自己的函数,然后导入并使用它。 因为这仅仅是此页面的一件小事,所以我不想为此而开始创建库等。 我也不想开始为servlet创建专家对象以返回其中的额外信息。

我唯一想做的就是从Servlet中返回整个选项行的实际html,而不仅仅是返回语言字符串,但这使我感到很丑陋,所以我希望有一个更优雅的解决方案。

快速解决比较EL中两个字符串的最佳方案是什么?

J2EE 1.4教程

trans by 2020-07-12T01:52:52Z

javascript-单击后如何禁用提交按钮?

我在表单末尾有一个提交按钮。

我在提交按钮上添加了以下条件:

onClick="this.disabled=true;
this.value='Sending…';
this.form.submit();"

但是,当移至下一页时,参数未传递,并且传递了空值。

trans by 2020-07-07T14:57:34Z

java-从Eclipse调试JSP

有谁知道从Eclipse中调试JSP的好工具? 我希望能够在应用程序运行时(在我的情况下为JBoss下)在Eclipse中设置和监视断点,逐步浏览Java代码/标记等。

大概,调试从JSP生成的servlet类是相当简单的,但是它也没有吸引力。

trans by 2020-02-20T16:52:03Z

使用<jsp:include>标记将参数传递到另一个JSP文件

我有一个JSP文件,并且在该文件中包含另一个JSP文件:

<c:forEach var="instanceVar" items="${instanceList}">
    <c:set var="instance"><jsp:include page="instance.jsp"/></c:set>
    ...
</c:forEach


在文件instance.jsp中,我想使用变量instanceVar。我想使用JSTL。 有什么办法吗?

trans by 2020-02-20T09:01:42Z

1 2 3 4 5 6 下一页 共6页