小编dev*_*dev的帖子

解析yaml文件

这是我第一次使用yaml文件,所以我首先想到的是找到任何可以帮助我解析文件的库.

我找到了两个库YamlBean,SnakeYaml我不确定我要使用哪个库.

这是我尝试解析的文件的示例

users:
  user1:
    groups:
    - Premium
  user2:
    groups:
    - Mod
  user3:
    groups:
    - default
groups:
  Mod:
    permissions:
      test: true
    inheritance:
    - Premium
  default:
    permissions:
      test.test: true
    inheritance:
    - Mod
  Admin:
    permissions:
      test.test.test: true
    inheritance:
    - Mod
Run Code Online (Sandbox Code Playgroud)

该文件将更改为动态,因此我不知道该文件将包含多少用户或组.

我想从中获取的信息是用户名和这样的组

user1 Premium
user2 Mod
user3 default
Run Code Online (Sandbox Code Playgroud)

并且从组中只有组名,就像这样

Mod
default
Admin
Run Code Online (Sandbox Code Playgroud)

任何人都可以让我从这里开始?什么是最好用的库?YamlBean或SnakeYaml.

我想,我需要将信息保存在我很容易迭代的内容中.

java yaml

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

获取"尝试获取锁定时发现死锁;尝试重新启动事务"

我的应用程序(java spring-core)有几个并发运行的线程并访问db,我在某个高峰时间遇到异常

07:43:33,400 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 1213, SQLState: 40001
07:43:33,808 ERROR [org.hibernate.util.JDBCExceptionReporter] Deadlock found when trying to get lock; try restarting transaction
07:43:33,808 ERROR [org.hibernate.event.def.AbstractFlushingEventListener] Could not synchronize database state with session
org.hibernate.exception.LockAcquisitionException: could not insert: [com.xminds.bestfriend.frontend.model.Question]
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:107)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
    at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2436)
    at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2856)
    at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79)
    at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)
    at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
    at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:383)
    at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:133)
    at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:656)
    at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:754)
    at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723)
    at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:147)
    at com.xminds.bestfriend.consumers.Base.onMessage(Base.java:96)
    at org.springframework.jms.listener.adapter.MessageListenerAdapter.onMessage(MessageListenerAdapter.java:339)
    at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:535)
    at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:495) …
Run Code Online (Sandbox Code Playgroud)

java spring hibernate

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

我应该在哪里开始调查SocketTimeoutException:读取超时

我不时地在日志中看到以下堆栈跟踪,HttpClient套接字超时试图text/script从另一个服务器访问内容.我的问题是我应该在Linux上检查在Weblogic上运行的J2EE应用程序的配置设置是什么?我特意寻找以下内容.

  • JVM超时参数
  • HttpClient PARAMS
  • Weblogic超时参数或任何其他配置,如线程数等.
  • J2EE应用程序设置,如servlet配置等.
  • 操作系统资源,如线程,文件处理程序和cpu
  • 可能影响套接字连接的任何其他配置设置
  • 线程转储会有帮助吗?

这是我的代码

HTTPResponse httpClientResponse;
//do some stuff
httpClientResponse.getStatusCode(); // this is where it fails
Run Code Online (Sandbox Code Playgroud)

这就是堆栈跟踪

java.net.SocketTimeoutException: Read timed out
at jrockit.net.SocketNativeIO.readBytesPinned(Native Method)
at jrockit.net.SocketNativeIO.socketRead(SocketNativeIO.java:32)
at java.net.SocketInputStream.socketRead0(SocketInputStream.java)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at HTTPClient.BufferedInputStream.fillBuff(BufferedInputStream.java:206)
at HTTPClient.BufferedInputStream.read(BufferedInputStream.java:126)
at HTTPClient.StreamDemultiplexor.read(StreamDemultiplexor.java:356)
at HTTPClient.RespInputStream.read(RespInputStream.java:147)
at HTTPClient.RespInputStream.read(RespInputStream.java:108)
at HTTPClient.Response.readResponseHeaders(Response.java:1123)
at HTTPClient.Response.getHeaders(Response.java:846)
at HTTPClient.Response.getStatusCode(Response.java:331)
at HTTPClient.RetryModule.responsePhase1Handler(RetryModule.java:92)
at HTTPClient.HTTPResponse.handleResponseImpl(HTTPResponse.java:872)
at HTTPClient.HTTPResponse.access$000(HTTPResponse.java:62)
at HTTPClient.HTTPResponse$2.run(HTTPResponse.java:839)
at HTTPClient.HTTPResponse$2.run(HTTPResponse.java:837)
at
HTTPClient.HttpClientConfiguration.doAction(HttpClientConfiguration.java:666)
at HTTPClient.HTTPResponse.handleResponse(HTTPResponse.java:837)
at HTTPClient.HTTPResponse.getStatusCode(HTTPResponse.java:242) 
Run Code Online (Sandbox Code Playgroud)

谢谢

我将使用下面的调查结果更新我的问题.

  1. 没有明确的超时设置,HttpClient这意味着服务器的http会话超时可能正在生效.
  2. SO_TIMEOUTfor HttpClient …

java apache weblogic httpclient java-ee

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

从命令行Linux运行Java程序

我对java不太熟悉,这让我发疯了.我写了一个java程序FileManagement,我需要从命令行运行它.

我可以从命令行编译它javac FileManagement/*.java,它将创建该文件夹中的所有类但是当我尝试java FileManagement.Main它时说:

线程"main"中的异常java.lang.NoClassDefFoundError:FileManagement/Main

问题是我在远程计算机上尝试了相同的程序,它运行正常.它不适用于我的.

java linux command-line

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

使用Node socket.io向特定用户列表发送通知

我正在使用NodeJS,Scoket.io

我正在尝试发送Facebook等通知.如果有1000个用户,而用户A有50个朋友,则通知将发送给这50个用户.我不想为所有用户播放

有效的方法是什么?

node.js socket.io

10
推荐指数
1
解决办法
728
查看次数

JAXB SOAP客户端出站消息具有空的soap主体(<soap:body />)

我在SOAP UI中使用模拟服务作为我的服务器端来获取我从Java Web服务客户端发出的soap请求的响应.

我的Java Web服务客户端形成了一个正确的请求,但我收到以下响应:

03-05-2016 00:03:00,562 |ERROR (pool-4919-thread-1)|REMEDY|TT_CONNECTION|ST_ERROR_Response was of unexpected text/html ContentType.  Incoming portion of HTML stream: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <soapenv:Body>
    <soapenv:Fault>
      <faultcode>Server</faultcode>
      <faultstring>Missing operation for soapAction [urn:XEL:TR-AlarmasCapo/New_Create_Operation_0] and body element [null] with SOAP Version [SOAP 1.1]</faultstring>
    </soapenv:Fault>
  </soapenv:Body>
</soapenv:Envelope> org.apache.cxf.interceptor.Fault: Response was of unexpected text/html ContentType.  Incoming portion of HTML stream: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <soapenv:Body>
    <soapenv:Fault>
      <faultcode>Server</faultcode>
      <faultstring>Missing operation for soapAction [urn:XEL:TR-AlarmasCapo/New_Create_Operation_0] and body element [null] with SOAP Version [SOAP 1.1]</faultstring>
    </soapenv:Fault>
  </soapenv:Body>
</soapenv:Envelope>
Run Code Online (Sandbox Code Playgroud)

我已将这些参数设置为false,但问题仍然存在:

在此输入图像描述

我在日志中看到了正确的请求,但是当我看到tcpdump请求为空时.标签为空:

12:05:00.536717 IP portal..60954 …
Run Code Online (Sandbox Code Playgroud)

java soap web-services soapui tcpdump

7
推荐指数
0
解决办法
637
查看次数

如何通过像“crontab -e”这样的脚本检查cron语法?

假设我通过脚本编写 cron 文件并直接在 /var/spool/cron/crontabs/. 当crontab -e我退出编辑器时,使用命令crontab 检查语法。有什么办法可以通过脚本做同样的检查吗?

linux syntax crontab

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

不允许进程自动启动引导完整的广播接收器

我从 logcat 收到以下消息:

08-16 11:34:36.257: W/BroadcastQueue(1040):
 Unable to launch app com.abc.xyz/10192 for broadcast Intent
 { act=android.intent.action.BOOT_COMPLETED flg=0x8000010 (has extras) }: process is not permitted to autostart
Run Code Online (Sandbox Code Playgroud)

我的manifest.xml看起来像这样:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 
<receiver android:name="com.abc.xyz.BootComplete" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED"/>
        </intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)

我尝试了很多方法,但都不起作用。我知道还有其他问题。谢谢。

java android

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

如何在JBoss eap 6.1服务器中启用XSLT 2.0处理器,以摆脱XSLT 2.0功能不可用的错误

我在XSLT 2.0中尝试日期格式化.当我尝试在我的工作区中运行它时运行正常,我得到了适当的响应.但是当我在JBoss eap 6.1上部署我的jar后尝试实现相同的功能时,我得到以下错误:

16:35:02,311错误[XSLTUtil](DefaultQuartzScheduler-camel-12_Worker-2)XSLTUtil | 0 | TransformerException:使用xslt文件转换xml时出错:javax.xml.transform.TransformerException:org.xml.sax.SAXException:找不到函数:format-dateTime javax.xml.transform.TransformerException:找不到函数:format-dateTime |

我的Xsl文件:这里我试图使用format-dateTime将当前日期格式化为其他格式.

<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='2.0'
    xmlns:xsl='http://www.w3.org/1999/XSL/Transform' 
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:func="http://exslt.org/functions" 
    xmlns:date="http://exslt.org/dates-and-times" 
    date:doc="http://www.exslt.org/date" exclude-result-prefixes="date func">

    <xsl:import href="date.xsl"/>
    <xsl:output method="xml" encoding="UTF-8" indent="yes" />
    <xsl:template match="/">
        <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:max="http://www.ibm.com/maximo">
            <soapenv:Header/>
            <soapenv:Body>
                <max:CreateMXINCIDENT_WSTB creationDateTime="" baseLanguage="" transLanguage="" messageID="" maximoVersion="">
                    <max:MXINCIDENT_WSTBSet>
                        <max:MXINCIDENT_WST action="" relationship="" deleteForInsert="" transLanguage="">
                            <max:MAXINTERRORMSG></max:MAXINTERRORMSG>
                            <max:ACTIVITY changed="true">
                                <xsl:value-of select='/tTroubleticket/activity' />
                            </max:ACTIVITY>
                            <max:BLOCK changed="">
                                <xsl:value-of select='/tTroubleticket/block' />
                            </max:BLOCK>
                            <max:CHANGEBY changed="true">AOS</max:CHANGEBY>
                            <max:CHANGEDATE changed="true">
                                <xsl:value-of select="format-dateTime(current-dateTime(), '[Y0001]-[M01]-[D01]T[H01]:[m01]:[s01].[f001][Z]')" />
                            </max:CHANGEDATE>
                            <max:CLASS changed="true">INCIDENT</max:CLASS>
                            <max:COMMERRORTYPE changed="true">
                                <xsl:value-of select='/tTroubleticket/commErrorType' />
                            </max:COMMERRORTYPE> …
Run Code Online (Sandbox Code Playgroud)

java xml xslt jboss exslt

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

错误:属性出现在@XmlType.propOrder 中,但不存在这样的属性

尝试使用 JAXB 进行编组时出现异常。

这是堆栈跟踪:

javax.xml.bind.JAXBException: Provider com.sun.xml.bind.v2.ContextFactory could not be instantiated: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 10 counts of IllegalAnnotationExceptions
Property authentication appears in @XmlType.propOrder, but no such property exists. Maybe you meant authentication?
                this problem is related to the following location:
                                at com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.TypeAorAgent2TTWSRequest
                                at public com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.TypeAorAgent2TTWSRequest com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.ObjectFactory.createTypeAorAgent2TTWSRequest()
                                at com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.ObjectFactory
Property key appears in @XmlType.propOrder, but no such property exists. Maybe you meant key?
                this problem is related to the following location:
                                at com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.TypePrimitiveField
                                at protected java.util.List com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.TypeAorAgent2TTWSRequest.requestPrimitiveField
                                at com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.TypeAorAgent2TTWSRequest
                                at public com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.TypeAorAgent2TTWSRequest com.alu.ipprd.aor310.ace.common.agt.jbpm.framework.tt.agt2tt.objects.ObjectFactory.createTypeAorAgent2TTWSRequest() …
Run Code Online (Sandbox Code Playgroud)

java xml jaxb

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