javascript

java

python

c#

android

c++

node.js

php

html

jquery

reactjs

ios

css

.net

git

ruby-on-rails

sql

c

string

ruby

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

IntelliJ IDEA中的JSP调试

有谁知道如何在IntelliJ IDEA中调试JSP

当我在JSP文件中设置断点时,这些断点似乎永远不会生效。 调试器从不击中它们。 IDEA似乎认为断点是有效的。 我确实在放置断点的行的左侧看到了一个红点。

我在IntelliJ论坛中阅读了这篇文章,其中JSP文件需要位于web-inf下才能调试工作。

但是随后我还阅读到,用户无法直接访问放置在web-inf下的JSP文件。

我不确定谁是真的。

trans by 2020-02-18T13:09:41Z

java-response.sendRedirect()和request.getRequestDispatcher()。forward(request,response)之间有什么区别

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

  • RequestDispatcher.forward()与HttpServletResponse.sendRedirect()                                     10个答案

使用JAVA时页面跳转出现问题,如果我使用:

response.sendRedirect("login.jsp")

然后我得到这个网址:http://localhost:8080/Shopping/login.jsp

但是如果我用

request.getRequestDispathcer("login.jsp").forward(request, response)

那么我得到以下网址:http://localhost:8080/Shopping/login.jsp(“购物”是我模块的名称)。

有什么不同?

trans by 2020-02-15T18:23:26Z

java-神秘的Eclipse JSP验证错误

Eclipse(Helios)有时会将看起来有效的JSP内容标记为有错误。 当我使用<c:if>标记时,它似乎经常中断。 例如,在仅包含以下内容的JSP中:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<body>

<c:if test="${1 == 1}">
something
</c:if>

</body>
</html>

编译后,“问题”选项卡中显示以下错误:

  • 不兼容的操作数类型String和诠释第1行
  • javax.servlet.jsp.JspException无法解析为类型行1
  • javax.servlet.jsp.PageContext无法解析为类型行1

代码运行正常。 JSP的验证是否存在问题,是否缺少明显的内容,或者这表明未正确设置。

trans by 2020-02-10T21:51:00Z

java-JSP自定义标签属性的默认值

为自定义JSP标记定义属性时,可以指定默认值吗? attribute指令没有默认值属性。 目前,我正在处理:

<%@ attribute name="myAttr" required="false" type="java.lang.String" %>

<c:if test="${empty myAttr}" >
 <c:set var="myAttr" value="defaultValue" />
</c:if>

有没有更好的办法?

trans by 2020-02-07T08:31:00Z

java-将<c:forEach>与HashMap一起使用

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

  • 如何在JSP中遍历HashMap?                                     3个答案

我有一个Java类,将servlet属性设置为HashMap对象:

request.setAttribute("types", da.getSecurityTypes());

其中request是HttpServletRequest对象,而da.getSecurityTypes()返回HashMap对象。

有没有一种方法可以使用c:foreach或其他JSTL标签浏览HashMap集合?

我刚在想:

 <c:forEach var="type" items="${types}">
                 ...
     </c:forEach>

或者,如果无法完成,那么如何制作自定义标签来处理呢?

在我的JSP页面中诉诸Java代码是我的最后选择,我想知道JSTL是否可以实现。

谢谢,乔纳斯

trans by 2020-02-04T21:30:48Z

jsp-使用JSTL <c:forEach>标记遍历List和Map的元素

如果我有一个JSF支持bean返回一个ArrayList类型的对象,则我应该能够使用<c:foreach>遍历列表中的元素。 每个元素都包含一个地图,尽管这里已经回答了有关如何通过JSTL访问地图内容的问题,但是如果我传递了此类地图的数组,我将找不到如何遍历它们并仍然使用JSTL访问地图内容的问题。 。 有一些文档引用了简单的迭代器,但没有引用那些本身就是地图的迭代器。

如果有人可以给我一个简单的示例,说明如何在JSP中迭代Java列表,我将不胜感激。标记

trans by 2020-02-04T12:48:41Z

CSS-HTML属性内的JSTL if语句

是否可以在JSTL中执行以下操作:

<div class="firstclass<c:if test='true'> someclass</c:if>">
   <p>some other stuff...</p>
</div>

有什么办法可以使它正常工作,还是有更好的方法通过查看JSTL-if语句来添加类?

trans by 2020-02-03T00:04:01Z

java-我可以将变量从JSP scriptlet传递到JSTL,但不能从JSTL传递给JSP scriptlet,而无需

以下代码导致错误:

 <c:set var="test" value="test1"/>
 <%
   String resp = "abc";
   resp = resp + test;
   pageContext.setAttribute("resp", resp);
 %>
 <c:out value="${resp}"/>

错误说

"error a line 4: unknown symbol 'test'".

如何将test从JSTL代码传递到JSP脚本?

trans by 2020-01-28T04:55:59Z

我应该使用JSPX而不是JSP吗?

使用JDeveloper,我开始为工作中的项目开发一组网页。 由于当时我对JDev不太了解,因此我跑到Oracle来学习一些教程。 JDev教程建议使用JSPX代替JSP,但是并没有真正解释原因。 您正在开发JSPX页面吗? 您为什么决定这样做? 进行JSPX路由的利弊是什么?

trans by 2020-01-27T20:15:31Z

Java-MS SQL异常:“ @ P0”附近的语法不正确

我正在使用MS SQL查询数据库,由于某种原因,我收到以下错误:com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '@P0',即使此'P0'在我的语法中不存在...

我已经读到有人遇到了同样的问题,但是他们使用的是存储过程,而我没有使用某些东西,所以我看不出他的解决方案对我有什么用。 (他的解决方案是在过程调用周围添加花括号{}。

无论如何,下面我已经粘贴了相关代码。 真希望有人能对此有所帮助,感到很沮丧。

PreparedStatement stmt = null;
Connection conn = null;    

String sqlQuery = "SELECT TOP ? \n"+
                              "z.bankAccountNo, \n"+
                              "z.statementNo, \n"+
                              "z.transactionDate, \n"+
                              "z.description, \n"+
                              "z.amount, \n"+
                              "z.guid \n"+
                              "FROM \n"+
                              "( \n"+
                              "select  \n"+
                              "ROW_NUMBER() OVER (ORDER BY x.transactionDate, x.statementNo) AS RowNumber, \n"+
                              "x.transactionDate, \n"+
                              "x.statementNo, \n"+
                              "x.description, \n"+
                              "x.amount, \n"+
                              "x.bankAccountNo, \n"+
                              "x.guid \n"+
                              "FROM \n"+
                              "( \n"+
                              "SELECT  \n"+
                              "a.bankAccountNo,  \n"+
                              "a.statementNo,  \n"+
                              "a.transactionDate, \n"+
                              "a.description,  \n"+
                              "a.amount,  \n"+
                              "a.guid  \n"+
                              "FROM BankTransactions as a  \n"+
                              "LEFT OUTER JOIN BankTransactionCategories as b  \n"+
                              "ON a.category = b.categoryCode  \n"+
                              "WHERE b.categoryCode is null \n"+
                              ") as x \n"+
                              ") as z \n"+
                              "WHERE (z.RowNumber >= ?)";

stmt = conn.prepareStatement(sqlQuery);
stmt.setInt(1, RowCountToDisplay);
stmt.setInt(2, StartIndex);
ResultSet rs = null;
try{
    rs = stmt.executeQuery();
} catch (Exception Error){
    System.out.println("Error: "+Error);
}

提前致谢!

trans by 2020-01-24T12:50:45Z

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