小编Vad*_*zim的帖子

HOCON替换默认值

在HOCON和Typesafe配置中,如何在替换时设置默认值.

它支持这样的东西?

${server.host: 'localhost'} - >如果设置了server.host(在相同的配置文件中或通过环境设置),则替换为如果未设置,则选择默认值

java properties typesafe-config hocon

8
推荐指数
1
解决办法
1947
查看次数

简单的Xml - 未保留的元素顺序?

我在我的Android应用程序中使用SimpleXml 2.6.1.尽管文档(http://simple.sourceforge.net/download/stream/doc/javadoc/index.html?org/simpleframework/xml/Order.html)表示xml中元素的顺序与方式相同他们已经在类文件中定义了,我总是让命令在xml中是随机的.如果我添加更多变量,则元素的顺序会再次发生变化.

添加@Order表示法有效,但由于该类很复杂,有100个变量,我不想添加顺序.这是Android版本的已知错误吗?它在java控制台程序中工作正常.

ps:我打开了反汇编的.class文件,发现变量以与java文件相同的顺序声明,所以我认为这不是类文件问题.

java xml android simple-framework

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

在jboss 6下使用我的log4j

我想在JBOSS6上部署我的Web应用程序.应用程序本身可行,但日志记录不行.我使用log4j并在我的战争中添加了一个jboss-deployment-structure.xml.内容是

<jboss-deployment-structure>
<deployment>
    <!-- Exclusions allow you to prevent the server from automatically adding some dependencies -->
    <exclusions>
        <module name="org.apache.log4j" />
        <module name="org.jboss.logging" />
    </exclusions>
</deployment>
Run Code Online (Sandbox Code Playgroud)

在我的log4j.xml中我有

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "dtd/log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
<appender name="LogAppender" class="org.apache.log4j.RollingFileAppender">
    <param name="File" value="C:\\logs\\web.log"/>
    <param name="MaxFileSize" value="10000KB"/>
    <param name="MaxBackupIndex" value="10"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%x %-5p [%d{yyyyMMdd HH:mm:ss}] - %c:%L - %m%n"/>
    </layout>
</appender>

<logger name="be.sofico.web">
    <level value="debug" />
    <appender-ref ref="LogAppender" />
</logger>
Run Code Online (Sandbox Code Playgroud)

这一切都适用于tomcat和websphere(当我最后设置classloading parent时)

如何让它在JBOSS 6上运行?

jboss log4j jboss6.x

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

Node.js和TeamCity

我有以下问题:

在我们公司,我们启动了一个新的Web项目,包含许多.js .css文件.我们公司是一家Java公司,意味着所有开发都在:Java/Maven/Team City进行构建过程.

由于该公司已经在使用TeamCity,我们也希望将它用于Web构建,我们正在尝试在构建过程中引入Node.js和GruntJs.我想知道是否有人有像TeamCity中的跑步者那样设置/配置Node.js的经验?

最后,我们想要"提交"一个更改,然后一个构建,这个构建将使用Node.js运行器完成.我为TeamCity 找到了以下插件.

任何帮助将不胜感激

teamcity plugins node.js npm gruntjs

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

强制彻底切换

是否有注释或其他方法将非详尽的switch语句警告转换为错误?如果没有在开关中正确处理所有值,我想要某个方法或类产生错误.

例:

public enum E {
  A,
  B
}
Run Code Online (Sandbox Code Playgroud)

在代码的其他地方,有一个像这样的枚举的开关

switch (enumValue) {
case A: /* do something */ break;
}
Run Code Online (Sandbox Code Playgroud)

Java会向您发出警告,指示此开关不处理所有枚举值.我想将此警告变为错误(永久,无论各个IDE设置如何).

请记住,在这种情况下我无法更改原始文件enum,所以我希望编译器强制执行它.

java enums

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

为什么应该尝试在已检查的异常上抛出未经检查的异常?

我被告知我应该考虑在我的代码中对Checked异常抛出Unchecked异常,而不仅仅是这样,而是用我自己的扩展RuntimeException.现在,我确实理解了两者之间的区别,但仍然不明白我为什么要这样做?

如果我有这个方法标题,抛出2种异常:

public static Optional<String> getFileMd5(String filePath) throws NoSuchAlgorithmException, IOException {}
Run Code Online (Sandbox Code Playgroud)

为什么我要用一个(不太详细的)例外替换它们?

java exception-handling checked-exceptions unchecked-exception

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

Java似乎挂了

我一直在自定义应用程序中使用Java Service包装器已经有一段时间了,它一直运行良好.由于在最近几天将我们的应用程序更新到新版本,JVM开始挂起,然后包装器在日志中打印出来:JVM出现挂起:超时等待来自JVM的信号.

然后它会自动终止JVM并再次启动应用程序.这在大约10个小时的运行后发生,这使得调试变得更加困难.

当然,我将查看我们所做的更改,但没有做出重大更改,我怀疑是会导致此类问题.

我在哪里可以尝试找出发生了什么?来自应用程序的调试消息并不表示任何有趣的内容 如果JVM崩溃了,它通常会创建一个转储,这可以帮助调试它,但它是挂起的,所以它不会创建转储.如果我没有自动重启服务,我可以做些什么来重新启动它之前从JVM中获取一些有用的信息?

在我看来,JVM不应该挂起典型的编程错误.你之前遇到什么会导致JVM挂起?

java debugging hang java-service-wrapper

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

如何找到一个horneq队列长度

我正在使用Hornetq 2.0我不知道我怎么知道目前有多少消息在队列中.

这是一个非常有用的功能,所以我可以在运行时知道我的消费者是否足够快地消费消息.

我没有使用JMS api,而是使用高度优化的核心API.

获取队列中消息数的正确(最快)方法是什么?

我找到了2路,但不知道这是什么方法.

public int size(){

    ClientSession session;

    try {

        session = sf.createSession(false, false, false);

        ClientRequestor requestor = new ClientRequestor(session, "hornetq.management");

        ClientMessage m = session.createMessage(false);

        ManagementHelper.putAttribute(m, "core.queue." + queueName, "messageCount");

        ClientMessage reply = requestor.request(m);

        int count = (Integer) ManagementHelper.getResult(reply);

        return count;

    } catch (Exception e) {

        e.printStackTrace();

    }

    return 0;

}
Run Code Online (Sandbox Code Playgroud)

要么

public synchronized int size(){

    ClientSession coreSession = null;

    int count = 0;

    try {

        coreSession = sf.createSession(false, false, false);

        ClientSession.QueueQuery result;

        result = coreSession.queueQuery(new …
Run Code Online (Sandbox Code Playgroud)

java jms message-queue hornetq

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

播放Websocket示例 - 只有一位Akka演员?

在随播放框架提供的Websocket聊天示例中,在我看来,只创建/使用了一个actor; 它还使用"接收",如果我理解的话,强制演员和线程之间的1:1映射,有效地使这个聊天服务器单线程?

在这里查看代码:https://github.com/playframework/Play20/blob/master/samples/scala/websocket-chat/app/models/ChatRoom.scala

如果这个分析正确吗?如果是,您是否有关于如何使该服务器具有高度可扩展性的指针?

scala actor akka playframework playframework-2.0

6
推荐指数
2
解决办法
4389
查看次数

如何从SOAP消息中删除空标题?

我使用Spring-WS用于消费web服务这孔潘若SOAP信封有空元素.我发现默认的SOAPMessage实现添加了一个.

我该如何删除它?

提前致谢

java soap spring-ws webservice-client soapheader

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