小编Cli*_*ote的帖子

如何在Struts 2中使用没有后缀的URL(例如.action)?

这就是我需要的东西,我不仅需要使用我的.war来提供java,还需要一些javascript文件.所以,例如.如果有人去了网址:

example.com/js/foo.jar
Run Code Online (Sandbox Code Playgroud)

然后我需要将其正确地作为javascript文件提供.同时,如果有人去:

example.com/bar
Run Code Online (Sandbox Code Playgroud)

我需要将Struts2作为可能的控制器来提供服务.

我在网上发现的从url中删除后缀的方法会导致两个URl都被struts 2服务(因此foo.js即使它存在,也会给第一个文件带来错误).是否有一种方法(例如拦截器)在发出错误之前首先检查给定的.js文件是否存在?

java struts2 url-routing struts2-interceptors

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

使用进度条上传文件,或从Google Web Toolkit访问Html 5文件Api?

我正在寻找一种方法来使用google web toolkit进行文件上传,使用自定义进度条.不寻找显示自己进度条的插件,我宁愿寻找能调用我的回调方法并通知它进度的东西,所以我可以展示自己的进度条.

如果那是不可能的,那么我想知道如何访问HTML5文件API,以便我可以构建自己的文件上传器小部件.

有任何想法吗?

谢谢.

java gwt html5 gwtquery gwtupload

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

使用Generics和GWT-RPC不能按预期工作

我试图使用泛型创建单个服务,而不是创建一百个不同的GWT-RPC服务和serviceAsync类.这是界面:

@RemoteServiceRelativePath("dispatch")
public interface CommandService extends RemoteService
{
    public <T> Result<T> execute(Command command, T target);
}
Run Code Online (Sandbox Code Playgroud)

Command是所有我可以发出不同的命令,如枚举Login, Register, ChangePassword"等在服务器端,我有一个HashMapCommand作为重点,以及Executor类作为值.对于每一个Command我都有一个对应的Executor.Executor执行该操作,并在服务器端返回其返回值.

当我尝试CommandServiceAsync在客户端上创建并尝试执行它时,会发生此问题.这是我的代码:

public enum Command
{
    LOGIN,
    REGISTER,
    CHANGE_PW;

    public <T> void execute(T target, final ResultReceiver<T> receiver)
    {
        CommandServiceAsync command = GWT.create(CommandService.class );
        command.execute(this, target, new AsyncCallback<Result<T> >()
        {
            @Override
            public void onFailure(Throwable caught)
            {
                MyProgram.handleFailure(caught);
            }

            @Override
            public void onSuccess(Result<T> result)
            {
                receiver.receive( …
Run Code Online (Sandbox Code Playgroud)

java generics gwt gwt-rpc

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

在switch语句中使用java.lang.Class &lt;?&gt;

我正在尝试Class<?>在if语句中使用,如下所示:

public static Model get(Class<? extends FooBase> type, long id )
{
    switch (type)
    {
        case FooType.class:
            return new Foo(id);
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,这行:case FooType.class:给我错误,

Expected Class<capture<? extends FooBase>> , given Class<FooType.class>

FooType确实实现了该FooBase接口。

不能打开Class<?>数值吗?

java generics

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

Java构造函数无法使用varargs

我有以下枚举,其中包含许多构造函数:

public enum Route
{
   HOMEPAGE("", null, UserType.GUEST);

   Route(String baseName, String langFile, Entity entity) {}
   Route(String langFile, Entity entity)  {}
   Route(String langFile, UserType... availability) {}
   Route(String baseName, String langFile, UserType... availability) {}
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我很明确地在定义时调用第4个构造函数HOMEPAGE.但问题是,我收到了错误:Cannot resolve constructor Route(java.lang.String, null, com.foo.UserType).

如果我从构造函数中删除varags,即它看起来像:

   Route(String baseName, String langFile, UserType availability) {}
Run Code Online (Sandbox Code Playgroud)

或者,如果我在定义时更改null HOMEPAGE,即:

   HOMEPAGE("", "", UserType.GUEST);
Run Code Online (Sandbox Code Playgroud)

然后它工作.但这对我来说没有意义.为什么不检测到我正在调用第4个构造函数?

java

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

获取css文件中包含的所有类/ ID的名称?

有没有办法或工具可用于获取css文件中包含的所有类/ ID的名称列表?

我需要构建所有css类/ id的xml映射,对于包含数千种样式的css文件,手动执行它是非常繁琐的.

javascript css

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

在 DynamoDB 中使用排序键时出现“索引键类型不匹配”

我有一个包含以下索引的表:

  • 用户
    • id(字符串,主要)
    • 电子邮件(字符串,全局辅助)
    • expiresOn (Date (string), global secondary)
    • is_premium(布尔值)

我想拥有is_premium的范围/排序键expiresOn,因此我可以例如查询在今天之前或当天到期的所有帐户,并且具有 is_premium = true。

如果我只是查询今天/今天之前到期的所有帐户,但没有 is_premium=true,我将在结果中获得 90% 的表。

但是,如果我尝试在 上设置范围查询is_premium,则在尝试将记录保存到表时会出现以下错误:

com.amazonaws.AmazonServiceException:索引键的类型不匹配(服务:null;状态代码:400;错误代码:ValidationException;请求 ID:null)

在 com.amazonaws.services.dynamodbv2.local.embedded.DDBExceptionMappingInvocationHandler.handleDynamoDBLocalServiceException(DDBExceptionMappingInvocationHandler.java:76) 在 com.amazonaws.services.dynamodbv2.local.embedded.DDBExceptionMappingInvocationHandler.invoke(DDBException. .proxy.$Proxy70.putItem(Unknown Source) at com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper$SaveObjectHandler.doPutItem(DynamoDBMapper.java:1270) at com.amazonaws.services.dynamodbv2.datamodeling.DynamouteDBV2.datamodeling.DynamouteDBMapper$SaveObjectHandler.doPutItem(DynamoDBMapper.java:1270) DynamoDBMapper.java:879) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper$SaveObjectHandler.execute(DynamoDBMapper.java:1120) 在 com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save)(6:6DynamoDBMapper.save)在 com。amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper.save(DynamoDBMapper.java:758)

我得到这个 dynamoDbMapper.save(order)

如果我删除排序/范围键,一切正常。

任何想法我做错了什么?错误是非常模棱两可的。

java amazon-dynamodb

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

使用 JDBC 将 SQLite db 加载到 Java 内存中?

通常从文件中读取 SQLite 数据库。如果数据库足够大,每个操作都可能需要文件 I/O 操作,这可能会很慢。

然而,SQLite 提供了一种将数据库加载到内存的方法 - 可以使用看起来像的 JDBC url 访问它jdbc:memory...

例如,这个问题描述了如何使用 python 实现这一点:How to load existing db file to memory in Python sqlite3?

但是我不知道如何使用 JDBC 在 Java 或 Scala 中实现相同的功能。

有任何想法吗?

java sqlite scala jdbc

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

MySQL NOT LIKE查询不起作用

我有2张桌子:

  • 帖子
  • 标签

标签表的结构如下:

  • POST_ID
  • 标签

因此,对于为帖子指定的每个标记,我都会在tags表中创建一条记录.如果帖子有10个标签,则标签表中将有10个记录与该post_id.

我现在正在尝试构建一个搜索页面,用户可以在其中搜索标签不包含给定关键字的帖子.但这会产生问题.像这样的查询:

SELECT DISTINCT posts.id, posts.title, posts.content
   FROM jobs, tags
   WHERE tags.tag NOT LIKE '%$keywords%' AND posts.id=tags.post_id
Run Code Online (Sandbox Code Playgroud)

不起作用,因为如果一个帖子有6个标签,其中一个有关键字,它仍然会被返回,因为标签表中的其他5个记录没有该关键字.

解决这个问题的最佳方法是什么?除了在posts表中创建一个新列以外,还有什么方法可以存储所有用于搜索的逗号分隔标记?

php mysql database database-design

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

javascript中的关联数组

我有这个对象:

function formBuddy()
{
    var fields = new Array();
    var labels = new Array();
    var rules = new Array();
    var count=0;

    this.addField = function(field, label, rule)
    {
        fields[count] = field;
        labels[field] = label;
        rules[field] = rule;
        count = ++count;
    }
}
Run Code Online (Sandbox Code Playgroud)

它以这种方式使用:

var cForm=new formBuddy();
cForm.addField("c_first_name","First Name","required");
cForm.addField("c_last_name","Last Name","required");
Run Code Online (Sandbox Code Playgroud)

问题是,在addField()函数中,fields数组设置正确(可能是因为数字索引用于引用它),但其他2个数组(labelsrules)根本没有被触及.做一个console.log在firebug中显示为空的.

我需要改变什么来使它们工作?我仍然想通过字段的字符串索引来引用规则和标签.

javascript arrays oop

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