小编Luc*_*sio的帖子

Groovy:将XML节点附加到现有XML文档

我正在使用Groovy,我正在尝试将xml节点插入到使用XmlSlurper解析的xml文档中.我设法在文档的末尾添加节点,但不是我真正需要的地方.

原始文件:

<xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:con="http://www.bea.com/wli/sb/pipeline/config"> 
    <ser:coreEntry isProxy="true" isEnabled="true" isTracingEnabled="false">
        <ser:binding type="SOAP" isSoap12="false" xsi:type="con:SoapBindingType" xmlns:con="http://www.bea.com/wli/sb/services/bindings/config">
          <con:wsdl ref="bus/src/main/osb/interfaces/apilink/ChargeServices"/>
          <con:port>
            <con:name>ChargeServicesPort</con:name>
            <con:namespace>java:dk.tdc.apilink.logic.sessions.interfaces</con:namespace>
          </con:port>
          <con:selector type="SOAP body"/>
        </ser:binding>
    </ser:coreEntry>
</xml-fragment>
Run Code Online (Sandbox Code Playgroud)

要添加的片段

def fragmentToAddXml = '''
<ser:security xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:con="http://www.bea.com/wli/sb/pipeline/config">hello</ser:security>
'''
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码.

def root = new XmlSlurper().parseText(file.getText())

root.'core-entry'.appendNode( fragmentToAddXml )
def xmlBuilder = new groovy.xml.StreamingMarkupBuilder().bind{ mkp.yield root }
Run Code Online (Sandbox Code Playgroud)

请注意,新的节点应该放在之前的"SER:结合"节点.

结果应该是:

<xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:con="http://www.bea.com/wli/sb/pipeline/config"> 
        <ser:coreEntry isProxy="true" isEnabled="true" isTracingEnabled="false">
            <ser:security xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:con="http://www.bea.com/wli/sb/pipeline/config">hello</ser:security>

            <ser:binding type="SOAP" isSoap12="false" xsi:type="con:SoapBindingType" xmlns:con="http://www.bea.com/wli/sb/services/bindings/config">
              <con:wsdl ref="bus/src/main/osb/interfaces/apilink/ChargeServices"/>
              <con:port>
                <con:name>ChargeServicesPort</con:name>
                <con:namespace>java:dk.tdc.apilink.logic.sessions.interfaces</con:namespace> …
Run Code Online (Sandbox Code Playgroud)

xml groovy

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

为什么 spring-boot-starter-logging 需要依赖 log4-to-slf4j

我有一个使用spring-boot-starter. dependecy:tree当我在 Maven 中运行目标时,我发现这spring-boot-starter-logging取决于logback和 (间接)log4j。为什么spring-boot-starter-logging需要依赖log4-to-slf4j

在此输入图像描述

logging log4j spring-boot

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

使用Spring 3 + Hibernate JPA时,发现JPA带注释的类

我有一个使用Spring 3 + Hibernate JPA堆栈的Web应用程序.

我想知道是否有办法让Hibernate自动发现@Entity带注释的类,这样我就不必在persistence.xml文件中列出它们.我的@Entity注释类在一个单独的jar中"活动",位于我的Web应用程序的WEB-INF/lib中.

这是我的Spring配置文件的片段:

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
   <property name="persistenceUnitName" value="mypersistence"/>
   <property name="dataSource" ref="dataSource"/>
   <property name="jpaVendorAdapter">
       <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
           <property name="showSql" value="true"/>
           <property name="generateDdl" value="true"/>
           <property name="databasePlatform" value="org.hibernate.dialect.DerbyDialect"/>
       </bean>
   </property>
</bean>

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="org.apache.derby.jdbc.ClientDriver"/>
    <property name="url" value="jdbc:derby://localhost:1527/library;create=true"/>
    <property name="username" value="app"/>
    <property name="password" value="app"/>
</bean>

<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
    <property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>

<bean id="persistenceAnnotation" class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>
Run Code Online (Sandbox Code Playgroud)

java spring persistence hibernate jpa

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

如何在Tomcat 6中配置全局JNDI数据源?

我很难在Tomcat 6.0.32中配置一个简单的JNDI池数据源.

我想在我的Web应用程序工件之外创建数据源定义.基本上我不希望我的应用程序知道访问数据库服务器的凭据.我假设,像在Weblogic中一样,应该可以在Tomcat中创建一个"全局"JNDI数据源,但到目前为止我一直没有成功.

我试图在CATALINA_HOME/conf/context中添加数据源定义:

<Resource name="jdbc/mydb"
 auth="Container"
 type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver"
 factory="oracle.jdbc.pool.OracleDataSourceFactory"
 url="jdbc:oracle:thin:@1.1.1.1.:xxx"
 user="xxxx"
 password="yyyy"/>
Run Code Online (Sandbox Code Playgroud)

结果是服务器在引导时输出以下行:

SEVERE: Null component Catalina:type=DataSource,path=/,host=localhost,class=javax.sql.DataSource,name="jdbc/mydb"
Run Code Online (Sandbox Code Playgroud)

任何指针都会受到赞赏.

java tomcat datasource

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

可以将任意文件的内容流式传输到浏览器的Java Web应用程序(实时尾部)

我一直在网上搜索一个Java Web应用程序,可以用来"拖尾"文件系统上的任意文件.最重要的要求是让应用程序回流文件更改,这样我就不必刷新(就像你可以用node.js轻松做的事情).

我可以自己快速写一个,但流媒体要求不是微不足道的.此外,应用程序应该可以部署在Java应用程序服务器中.

任何指针?

谢谢

java web-applications tail

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

如何在Web应用程序中使用Netty - 步骤到正确的配置

我正在尝试将Netty设置为在我的Web应用程序中运行嵌入式.

我找到了以下文档:http://docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/socket/http/package-summary.html#package_description,它描述了如何配置Web.启动Netty servlet的xml文件.

现在该文件说:

其次,您必须使用本地传输将基于Netty的服务器应用程序绑定在相同的Servlet上下文或共享类加载器空间中(请参阅LocalServerChannelFactory.)您可以使用您喜欢的IoC框架(如JBoss Microcontainer,Guice和Spring)来执行此操作.以下示例显示如何将echo服务器绑定到JBossAS 5中上面指定的端点(web.xml):

这听起来很合理,但我不清楚 - 实际上 - 应该如何运作.假设我想使用Spring作为Ioc容器,将netty绑定到本地传输的正确bean配置是什么?

另外,我如何启动Spring上下文?来自web.xml?

谢谢

java spring web-applications netty

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