小编Bri*_*ler的帖子

如何在第一次显示时告诉Struts2不验证表单?

我目前正在尝试学习Struts2.

我创建了一个表单,一个处理它的动作,一个用于验证它的XML,以及struts.xml中的操作.

每次表单显示时,即使是第一次,Struts2也会尝试验证,因此在用户有机会完成错误之前会显示错误.

这是相关代码:

<!-- /WebContent/views/user/login.jsp -->
<?xml version="1.0" encoding="ISO-8859-1" ?>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!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>Login Page</title>
<s:head />
</head>
<body>
    <h1>Login Page</h1>
    <s:form action="executeUser">
        <s:textfield key="userBean.userName" />
        <s:password key="userBean.password" />
        <s:submit align="center" />
    </s:form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
<!-- /src/struts.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

    <constant name="struts.devMode" value="true" />

    <package …
Run Code Online (Sandbox Code Playgroud)

java validation jsp struts2

11
推荐指数
2
解决办法
1万
查看次数

为什么在Eclipse中创建Servlet会破坏我的web.xml?

有点懒,我很高兴发现我可以通过New - > Servlet来创建一个新的servlet源代码,而不是去New - > Class然后将类编辑成一个servlet.

但是,我发现每次在Eclipse中创建一个新的servlet时,Eclipse都会修改我的web.xml.

具体来说,它将top元素修改为:

<web-app 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:javaee="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/j2ee 
        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
    id="WebApp_ID" version="2.4">
Run Code Online (Sandbox Code Playgroud)

(我的线路爆炸.)

这似乎并不一定是坏事,但它通过在其名称前面加上"javaee:"来修改各种子元素,以指示这些元素属于该命名空间.

例如,它会改变

<display-name>ShowLifecycles</display-name>
Run Code Online (Sandbox Code Playgroud)

<javaee:display-name>ShowLifecycles</javaee:display-name>
Run Code Online (Sandbox Code Playgroud)

之后,eclipse会抱怨它修改的所有元素,给我一些符号:

cvc-complex-type.2.4.a: Invalid content was found starting with element 'javaee:display-name'. One of '{"http://
 java.sun.com/xml/ns/j2ee":description, "http://java.sun.com/xml/ns/j2ee":display-name, "http://java.sun.com/xml/ns/
 j2ee":icon, "http://java.sun.com/xml/ns/j2ee":distributable, "http://java.sun.com/xml/ns/j2ee":context-param, "http://
 java.sun.com/xml/ns/j2ee":filter, "http://java.sun.com/xml/ns/j2ee":filter-mapping, "http://java.sun.com/xml/ns/
 j2ee":listener, "http://java.sun.com/xml/ns/j2ee":servlet, "http://java.sun.com/xml/ns/j2ee":servlet-mapping, "http://
 java.sun.com/xml/ns/j2ee":session-config, "http://java.sun.com/xml/ns/j2ee":mime-mapping, "http://java.sun.com/xml/ns/
 j2ee":welcome-file-list, "http://java.sun.com/xml/ns/j2ee":error-page, "http://java.sun.com/xml/ns/j2ee":jsp-config, "http://
 java.sun.com/xml/ns/j2ee":security-constraint, "http://java.sun.com/xml/ns/j2ee":login-config, "http://java.sun.com/xml/ns/
 j2ee":security-role, "http://java.sun.com/xml/ns/j2ee":env-entry, "http://java.sun.com/xml/ns/j2ee":ejb-ref, "http://
 java.sun.com/xml/ns/j2ee":ejb-local-ref, "http://java.sun.com/xml/ns/j2ee":service-ref, "http://java.sun.com/xml/ns/
 j2ee":resource-ref, "http://java.sun.com/xml/ns/j2ee":resource-env-ref, "http://java.sun.com/xml/ns/j2ee":message-
 destination-ref, "http://java.sun.com/xml/ns/j2ee":message-destination, "http://java.sun.com/xml/ns/j2ee":locale-
 encoding-mapping-list}' is expected.
Run Code Online (Sandbox Code Playgroud)

更糟糕的是,当我使用find和replace将所有内容删除到"javaee:"中时,Eclipse仍会抱怨这些文件,即使它们不再存在.我必须将整个剩余文件复制并粘贴到自身之上,以避免这些投诉.

我确信Eclipse正在努力发挥作用,期待这个命名空间的一些愿望或需求.我怎样才能做以下两件事之一: …

java eclipse web.xml servlets xml-namespaces

7
推荐指数
1
解决办法
3万
查看次数

在Eclipse中,我可以使用"就地编辑器打开"作为默认选项吗?

我需要花费大量时间来处理大量的Excel数据,并经常发现自己在Excel的几个不同实例中打开了十几个或更多Excel工作簿,这使得在任何给定时间都很难找到我想要的工作表.

我开始认识到,通过使用Eclipse打开excel文件和带有"就地"编辑器的csv文件,我可以淡化这种疯狂.

但是,我无法弄清楚如何使就地编辑器成为默认编辑器.有任何想法吗?

(或者,有没有办法我可以添加文件资源管理器面板和标签,以提供类似的功能.)

eclipse excel default in-place-editor

7
推荐指数
2
解决办法
9386
查看次数

在 Blazor 应用程序中,如何根据应用程序是在 GitHub 还是在本地计算机上执行来使基本 URL 有所不同?

我有一个托管在 GitHub 页面上的 blazor 应用程序。

这是index.html:

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <title>Bitcoin Challenge Blazor App</title>
    <base href="/BitcoinChallengeBlazor/" />
    <link href="css/bootstrap/bootstrap.min.css" rel="stylesheet" />
    <link href="css/app.css" rel="stylesheet" />
</head>

<body>
    <app>Loading...</app>

    <div id="blazor-error-ui">
        An unhandled error has occurred.
        <a href="" class="reload">Reload</a>
        <a class="dismiss"></a>
    </div>
    <script src="_framework/blazor.webassembly.js"></script>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

在 GitHub 页面上,基数必须是<base href="/BitcoinChallengeBlazor/" />. 但在本地开发时,需要有基础<base href="/" />

理论上,我可以更改它并告诉 git 此更改属于不同的更改集。但在我看来应该有一种更好的方法来做到这一点,其中包括根据环境的正确值,可能使用launchSettings.jsonor appsettings.json

...但对我来说,如何在确切的上下文中从这两个文件中的一个/两个中获取值并不明显。

有任何想法吗?

environment configuration github base-url blazor

7
推荐指数
1
解决办法
1652
查看次数

在Java中,我可以整合两个使用JspWriter和其他PrintWriter的类似函数吗?

我有以下类,您将看到它有一个相当冗余的formatNameAndAddress方法:

package hu.flux.helper;
import java.io.PrintWriter;

import javax.servlet.jsp.JspWriter;

// A holder for formatting data 
public class NameAndAddress 
{
 public String firstName;
 public String middleName;
 public String lastName;
 public String address1;
 public String address2;
 public String city;
 public String state;
 public String zip;

 // Print out the name and address.
 public void formatNameAndAddress(JspWriter out)
  throws java.io.IOException
  {
   out.println("<PRE>");
    out.print(firstName);

    // Print the middle name only if it contains data.
    if ((middleName != null) && (middleName.length() > 0)) 
     {out.print(" " + middleName);}

    out.println(" …
Run Code Online (Sandbox Code Playgroud)

java polymorphism jsp casting printwriter

6
推荐指数
1
解决办法
978
查看次数

Smarty 3如何与Zend Framework 2一起使用?

我很久以前就使用过PHP5,目前我正在尝试更新我的知识,并在Zend Framework 2和Smarty 3的知识中为可能的项目增加知识.

我目前正试图弄清楚如何使用Smarty 3作为Zend Framework 2的替代/补充.

我可以通过Google在此主题上找到的所有内容:

  1. 已过时(例如Zend Framework 1)
  2. 假设我对Zend和Smarty的工作知识比我实际做的更为亲密.

可有人向我解释,就好像我是9,使用Zend主干应用程序作为我的出发点:

  1. 在什么目录/文件夹(使用完全限定的路径),我应该解压缩Smarty-3.1.12包?

  2. 我需要创建哪些类,它们究竟需要包含哪些类,以及它们应存储在何处?

  3. 需要修改哪些文件,以及如何使Smarty可以在我的模块中查看?

  4. 参考上面创建的类,如何从AZ中使用这些类(例如,包括在适当的类中,分配值,创建输出)?

php include zend-autoloader smarty3 zend-framework2

6
推荐指数
1
解决办法
4889
查看次数

为什么我的f:param渲染不在h:outputText中?

我有一个message.properties文件,其中包含:

success_text=How cool... You have guessed the number.  {0} is correct! 

我有一个JSF,其中包含:

<h:outputText value="#{msg.success_text}" >
    <f:param value="#{numberBean.userNumber}" />
</h:outputText>
Run Code Online (Sandbox Code Playgroud)

无论价值是什么,HTML都会出现:

多酷啊......你已经猜到了这个数字.{0}是对的!

为什么不{0}更改为指示的值<f:param>以及如何修复它?

parameters jsf message

5
推荐指数
1
解决办法
1017
查看次数

在Elixir中,有什么方法可以使_real_常量?

我觉得有些误导和困惑,尽管Elixir具有不可变性,但不可变性却埋在可变抽象层之间。

例如,

如果我有代码:

foo = {:cat, "Puff"}
bar = foo
foo = {:cat, "Pepper"}
Run Code Online (Sandbox Code Playgroud)

我可以期望bar会保留下来,{:cat, "Puff"} 但是foo的不断变化的值可能使我们难以推理。

当我第一次阅读模块属性时,我以为它们会提供一些解决方案,但有人向我指出,这是完全有效的代码:

defmodule Cats do
   @cat "Puff"
   def foo, do: @cat

   @cat "Pepper"
   def bar, do: @cat
end
Run Code Online (Sandbox Code Playgroud)

可以依靠保持不变的功能定义吗?例如。

defmodule Cats do
   def foo, do: "Puff"
   def bar, do: "Pepper"
end
Run Code Online (Sandbox Code Playgroud)

这样的代码可以被认为是惯用的吗?有什么原因我不应该这样做吗?

我是否可以将其他任何种类的实体声明为具有某种价值,而没有其他任何代码赋予该实体新价值的可能性?

constraints constants immutability elixir reusability

5
推荐指数
2
解决办法
109
查看次数

为什么我不能保存这个SalesForce Batchable类?

我目前正在使用Apex工作簿来刷新我对SalesForce的了解.

教程#15,第1课:提供以下代码:

global class CleanUpRecords implements Database.Batchable<Object>
{
    global final String query;

    global CleanUpRecords (String q) {query = q;}

    global Database.Querylocator start (Database.BatchableContext BC)
    {
           return Database.getQueryLocator(query);
    }    


    global void execute (Database.BatchableContext BC, List<sObject> scope)
    {
        delete scope;
        Database.emptyRecycleBin(scope);
    }    

    global void finish(Database.BatchableContext BC)
    {
        AsyncApexJob a = [
                SELECT Id, Status, NumberOfErrors, JobItemsProcessed, TotalJobItems, CreatedBy.Email
                FROM AsyncApexJob 
                WHERE Id = :BC.getJobId()
            ];

        // Send an email to the Apex job's submitter
        // notifying of job completion.
        Messaging.SingleEmailMessage …
Run Code Online (Sandbox Code Playgroud)

class salesforce save batch-processing apex-code

4
推荐指数
1
解决办法
3496
查看次数

在 Rust 中,如何限制泛型 T 以允许模数?

作为锻炼练习,我目前正在尝试根据值是否为偶数来过滤迭代器,以生成新的迭代器。

我的功能目前看起来像:

pub fn evens<T>(iter: impl Iterator<Item = T>) -> impl Iterator<Item = T>
    where T: std::ops::Rem<Output = T>
{
    iter.filter(|x| x % 2 != 0)
}
Run Code Online (Sandbox Code Playgroud)

操场

但这不会编译,因为:

pub fn evens<T>(iter: impl Iterator<Item = T>) -> impl Iterator<Item = T>
    where T: std::ops::Rem<Output = T>
{
    iter.filter(|x| x % 2 != 0)
}
Run Code Online (Sandbox Code Playgroud)

但是,我知道我不能简单地将其更改为

error[E0369]: cannot mod `&T` by `{integer}`
 --> src/lib.rs:4:23
  |
4 |     iter.filter(|x| x % 2 != 0)
  |                     - ^ - {integer}
  | …
Run Code Online (Sandbox Code Playgroud)

restriction modulo bounds type-parameter rust

4
推荐指数
1
解决办法
92
查看次数