小编His*_*His的帖子

StAX - 如何将XMLInputFactory.IS_VALIDATING设置为true?

这是我第一次使用StAX解析XML文档(仍处于学习阶段).在使用XMLStreamReader解析XML文档并使用XMLStreamWriter生成文档副本的过程中,我遇到了以下警告,该警告在writer的输出中表示为注释:

 <!-- Exception scanning External DTD Subset.  True contents of DTD cannot be determined.  Processing will continue as XMLInputFactory.IS_VALIDATING == false. -->
Run Code Online (Sandbox Code Playgroud)

我理解警告的原因,但我希望它成为一个错误,而不是默默地成为一个警告,所以然后我尝试将XMLInputFactory.IS_VALIDATING设置为true:

 XMLInputFactory factory = XMLInputFactory.newInstance();
 factory.setProperty(XMLInputFactory.IS_VALIDATING, Boolean.TRUE);
Run Code Online (Sandbox Code Playgroud)

但上面对我提出了一个例外:

线程"main"中的异常java.lang.IllegalArgumentException:com.sun.org中的com.sun.org.apache.xerces.internal.impl.PropertyManager.setProperty(PropertyManager.java:150)不支持isValidating的true值. com.test.test.helper.Test.main中的com.test.test2.helper.SgmlDocumentParser.parse(SgmlDocumentParser.java:83)中的internal.stream.XMLInputFactoryImpl.setProperty(XMLInputFactoryImpl.java:257)(Test.java: 66)

那我的方法出了什么问题呢?

谢谢!

java stax xml-parsing

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

演员模型中的演员的生命游戏

我是演员模特的新手.任何人都可以在演员模型中解释一个演员的生命周期吗?我一直在寻找文档中的答案,但我找不到任何令人满意的东西.

我对演员在完成onReceive()方法后所做的事情感兴趣- 它还活着还是死了?我们可以控制它的生命周期来说"不要死,等待下一条消息"吗?例如,使用循环路由器,如果我将其设置为有5个演员 - 它是否总是将作品分配到相同的 5个演员?或者演员在有消息时被销毁并创建,但最大限制始终为5.

谢谢!

scala actor akka

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

PrimeReact 和样式组件

我似乎无法使用 styled-component 设置 PrimeReact 组件的样式。

鉴于以下代码来呈现 InputText,我的目的是改变它的宽度。但它不起作用。

import styled from "styled-components";
import {InputText} from 'primereact/components/inputtext/InputText';

class Component extends React.Component {
    render() {
        return (
            <InputText/>
        )
}

const ComponentView = styled(Component)`
    .ui-inputtext {
        width: 1000px;
    }
`;
Run Code Online (Sandbox Code Playgroud)

css reactjs styled-components primereact

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

Java中的软引用LinkedHashMap?

Java中是否存在基于softreference的LinkedHashMap?如果不是,有没有人得到我可以重用的代码片段?我保证会正确引用它.

谢谢.

java soft-references linkedhashmap

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

Java中的UTF-16到ASCII转换

一直忽略它,我目前正在强迫自己更多地了解Java中的unicode.关于将UTF-16字符串转换为8位ASCII,我需要做一些练习.有人可以请教我如何用Java做到这一点?我知道你不能用ASCII表示所有可能的unicode值,所以在这种情况下我想要只是添加超过0xFF的代码(不好的数据也应该静默添加).

谢谢!

java ascii utf-16

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

通过制作浅表副本来避免List上的ConcurrentModificationException

我有一个类如下:

class Test
{
    private LinkedList<Person> persons = new LinkedList<Person>;

    public synchronized void remove(Person person)
    {
        persons.remove(person);
    }

    public List<Person> getAllPersons()
    {
        // Clients may iterate over the copy returned and modify the structure.
        return new ArrayList<Person>(persons);
    }
}
Run Code Online (Sandbox Code Playgroud)

persons可以同时修改:一个通过remove()一个线程,两个通过返回的浅复制实例getAllPersons().

我已经在多线程环境中测试了上述场景,看看我是否可以ConcurrentModificationException通过在getAllPersons()调用时返回浅拷贝来避免.它似乎工作.我从来没有遇到过ConcurrentModificationException.

在这种情况下,为什么只做一个浅的副本persons避免ConcurrentModificationException

java list shallow-copy concurrentmodification

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

如何在Java中对本机操作系统进行身份验证而不使用JNI?

我的Java RCP应用程序在启动时提示用户输入用户名和密码.如何在不使用JNI移植某些C库的情况下使用这些凭据对本机操作系统进行身份验证?谢谢!

PS.如果可能,不使用第三方库的纯Java实现将是非常可取的.

java authentication

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

ThreadLocal的; 是不是每次创建变量的副本都一样?

我仍然对ThreadLocal的概念感到困惑.我已经阅读了JavaDoc以及其他相关问题,但是使用的术语并没有对我有多大帮助.

我有点了解ThreadLocal,也就是说,每个线程都有自己的变量副本.那么......这怎么会让它与...每次构建新变量有所不同?

例如,使用DateFormatter作为示例:

public void convertDate(String date) 
{ 
    // Contruct new date formatter for every invocation of the method.
    DateFormatter df = new SimpleDateFormatter(...);
    ....
}

public void convertDate(String date) 
{ 
    // Getting date formatter from threadlocal.
    DateFormatter df = threadLocal.get();
    ....
}
Run Code Online (Sandbox Code Playgroud)

如果第二个所做的只是返回变量的新副本,第一个与第二个有什么不同?

谢谢.

java thread-local

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

帮助查看以下代码,它是否安全?

private static Callback callback;

public Foo()
{
    super(getCallback());
}

private static Callback getCallback()
{
    callback = new Callback();
    return callback;
}
Run Code Online (Sandbox Code Playgroud)

可以从多个线程调用构造函数Foo().我关注的是私有静态字段'callback'和静态方法'getCallback()'.

可以看出,每次调用'getCallback()'时,它都会为静态字段'callback'分配一个新值.

我的猜测是它不是线程安全的,因为关键字static总是附加到类而不是实例,这意味着,Foo的静态字段'回调'可能被构造另一个Foo()的其他线程覆盖.它是否正确?

如果我错了,请纠正我.谢谢!

编辑:我的目的是在课堂的某个地方保留'回调',以便我以后可以重复使用它.但这并不容易,因为Foo从一个具有构造函数强制'回调'的类扩展而来.

java multithreading static-methods

3
推荐指数
2
解决办法
596
查看次数

Java:这是将当前时间作为特定时区的Calendar对象的正确方法吗?

我知道还有其他类似的问题,但我想出了自己的方法来获取特定时区的当前时间,所以我只是想确认它是否正确,或者有没有我没有照顾好.

Calendar cal = Calendar.getInstance();

// Assuming we want to get the current time in GMT.
TimeZone tz = TimeZone.getTimeZone("GMT");
cal.setTimeInMillis(calendar.getTimeInMillis()
                    + tz.getOffset(calendar.getTimeInMillis())
                    - TimeZone.getDefault().getOffset(calendar.getTimeInMillis()));

// Calendar should now be in GMT.
Run Code Online (Sandbox Code Playgroud)

以上是否正确?我做了我自己的测试,似乎按预期工作,但只是想与Stack Overflow的专家再次确认.

java timezone calendar

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

为什么这不是有效的XML DTD?(参数实体和#PCDATA)

这里使用DTD验证器,我被告知以下DTD无效.

<!ENTITY % text "(#PCDATA|L)*">
<!ELEMENT H         (%text;)+>
<!ELEMENT L         (#PCDATA)>
Run Code Online (Sandbox Code Playgroud)

错误消息是:"A'('字符或元素类型在元素类型"H"的声明中是必需的."在第2行第22列.

任何人都可以指出它为什么无效?我怎样才能使它有效?错误消息对我来说并不是非常友好.谢谢.

xml dtd xml-validation pcdata

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

在Akka Java actor模型中,路由器可以使用非默认构造函数创建actor吗?

在Akka Java actor模型中,如果我有一个RoundRobinRouter,当它的tell()方法被调用时,我希望路由器(作为主)用非默认构造函数创建子actor,因为我需要传入一些参数.我怎样才能做到这一点?

我理解我可以使用非默认构造函数的actor Props,但是当主actor是路由器时它是如何使用的?

谢谢!

default-constructor actor akka

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

Spring 的 @Lazy 初始化线程安全吗?

希望一个简单的问题来回答。我找不到任何绝对明确的答案。任何人都可以帮助提供可靠的消息来源。

我的普遍看法是,如果不使用适当的同步块,延迟加载在多线程应用程序中是危险的。我想知道这是否适用于 Spring。

谢谢。

java spring thread-safety lazy-initialization

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