标签: java-ee-6

ASM jar - 为什么我的java项目依赖于此?

我有一个Java项目,内部依赖于它asm jar.奇怪的是,我甚至不知道为什么我的项目以某种方式依赖于这个库(可能由maven引入作为传递依赖)?

任何人都可以帮助我知道为什么有人需要asm jar

提前致谢 !

编辑: 你还可以提一下可能需要什么用途/用例asm jar?

java maven-2 java-ee-6 java-bytecode-asm

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

如何使用新的scala 2.8.0嵌套注释

看起来当scala 2.8.0出来时,我们可以在持久层中使用嵌套的@annotations.但是怎么样?任何人都可以请将这个从java转换为scala吗?谢谢.

@NamedQueries({
    @NamedQuery(name = "findAll", query="select p from Person p"),
    @NamedQuery(name = "findTheOne",
          query="select p from Person p where p.name = 'Neo'")
})

persistence annotations scala scala-2.8 java-ee-6

9
推荐指数
1
解决办法
1335
查看次数

如何使用JSF 2 h实现"CSS版本化"(解决缓存问题):outputStylesheet?

我开始使用JSF 2,所以我想试试h:outputStylesheet.它运行正常,但后来我尝试应用"模式"或将查询字符串添加到请求的技巧,该请求随文件版本而变化,以强制浏览器获取更改.

这里使用的东西.

不幸的是我无法做到这一点.实际上,当使用该标记时,它不会生成一个简单的URL,而是一个已经有查询字符串的计算URL.我已经在规范和这里找到了有关JSF 2中资源版本化的一些信息,但它似乎指的是资源的多个版本,这不是我需要的.

当然,我总是可以回去不使用新标签.但我想在此分享一下以供讨论.

更新1 - 一些例子:

我试过的是这样的:

<h:outputStylesheet library="css" name="estilo.css?v=1" target="head"/>
Run Code Online (Sandbox Code Playgroud)

其呈现为:

<link type="text/css" rel="stylesheet" href="RES_NOT_FOUND" />
Run Code Online (Sandbox Code Playgroud)

相当具有描述性.;-)

我试图得到的是这样的:

<link rel="stylesheet" type="text/css" href="../css/estilo.css?v=1"/>
Run Code Online (Sandbox Code Playgroud)

其中,使用JSP,我曾经这样说过:

<link rel="stylesheet" type="text/css"
 href="<c:url value='/css/estilo.css?v=${initParam.version}'/>"/>
Run Code Online (Sandbox Code Playgroud)

css java versioning java-ee-6 jsf-2

9
推荐指数
1
解决办法
3494
查看次数

JavaEE 6:如何在独立的JMS客户端中注入JMS资源?

我无法javax.jms.ConnectionFactory注入我的独立JMS客户端.我得到一个java.lang.NullPointerExceptionconnectionFactory.createConnection()下面的代码.

JmsClient.java

public class JmsClient {

    @Resource(mappedName="jms/QueueConnectionFactory")
    private static ConnectionFactory connectionFactory;    

    @Resource(mappedName="jms/ShippingRequestQueue")
    private static Destination destination;

    public static void main(String[] args) {        
        try {
            Connection connection = connectionFactory.createConnection();
            connection.start();

            Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
            MessageProducer producer = session.createProducer(destination);
            ObjectMessage message = session.createObjectMessage();

            ShippingRequestQueue shippingRequest = new ShippingRequestQueue(1, "107, Old Street");

            message.setObject(shippingRequest);
            producer.send(message);
            session.close();
            connection.close();

            System.out.println("Shipping request message sent ..");
        } catch (Throwable ex) {
            ex.printStackTrace();
        }        
    }

}
Run Code Online (Sandbox Code Playgroud)

我使用Glassfish 3.1管理控制台在Open MQ(MoM)上创建了相应的连接工厂和目标资源.

有人能帮我理解我错过了什么吗?

jms message-driven-bean java-ee-6 glassfish-3

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

无法运行arquillian测试

我正在尝试使用Arquillian进行一些单元测试,但是我无法找到使用Maven部署时失败的原因.

这是班级考试:

package com.ndeveloper.spec.test;

import javax.inject.Inject;

import junit.framework.Assert;

import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.ArchivePaths;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.asset.ByteArrayAsset;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.junit.Test;
import org.junit.runner.RunWith;

import com.ndeveloper.spec.controller.GreetingBean;

@RunWith(Arquillian.class)
public class GreetingBeanTest {

@Inject
GreetingBean greetingBean;

@Deployment
public static JavaArchive createTestArchive()
{
    return ShrinkWrap.create( JavaArchive.class,"test.jar").
            addClass(GreetingBean.class).addAsManifestResource(
                    new ByteArrayAsset("<beans/>".getBytes()),
                    ArchivePaths.create("beans.xml"));

}

@Test
public void testInjection(){
    Assert.assertEquals("Hello World", greetingBean.getGreeting());     
}
}
Run Code Online (Sandbox Code Playgroud)

我正在使用jboss jboss-javaee6-webapp原型.奇怪的是,最初的测试工作得很好......但是使用了几次之后.出现以下错误:

测试错误:com.ndeveloper.spec.test.GreetingBeanTest:无法获取MBeanServerConnect:service:jmx:rmi:/// jndi/rmi://127.0.0.1:1090/jmxrmi

万无一失的报告说如下:

-------------------------------------------------------------------------------
Test set: com.ndeveloper.spec.test.GreetingBeanTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.309 sec …
Run Code Online (Sandbox Code Playgroud)

java unit-testing java-ee-6 ejb-3.1 jboss-arquillian

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

CDI注入EJB会导致NullPointerException

我是Java EE 6和CDI的新手.我已经阅读了几个教程和焊接文档.然而,根据我的理解应该起作用的东西不是,所以我需要帮助.

我有以下情况.我使用随IDE提供的maven原型创建了一个带有NetBeans 7.0.1的Java EE 6应用程序,并部署到IDE提供的GlassFish 3.1.

beans.xml位于我的EJB jar的META-INF目录中.

我创建了一个类作为我的EJB工件(和EntityManager)的生产者类工作的类

@Stateless
public class EjbArtifactProducer {

    @PersistenceContext(unitName = "trackProfiler-PU")    
    private EntityManager em;

    @EJB
    private UserFacadeLocal userFacade;

    @EJB
    private AuthServiceLocal authService;

    @EJB
    private NewsEntryFacadeLocal newsEntryFacade;

    @EJB
    private RoleFacadeLocal roleFacade;

    @EJB
    private TrackCommentFacade trackCommentFacade;

    @EJB
    private TrackFacade trackFacade;

    @EJB
    private TrackTypeFacade trackTypeFacade;

    @EJB
    private WaypointFacadeLocal waypointFacade;

    @Produces
    public AuthServiceLocal getAuthService() {
    return authService;
    }

    @Produces
    public EntityManager getEm() {
    return em;
    }

    @Produces
    public NewsEntryFacadeLocal getNewsEntryFacade() {
    return newsEntryFacade;
    }

    @Produces
    public …
Run Code Online (Sandbox Code Playgroud)

java cdi java-ee-6 ejb-3.1 glassfish-3

9
推荐指数
1
解决办法
8715
查看次数

@Inject仅适用于CDI容器创建的POJO?

我只想确认我完全理解CDI工作的先决条件.如果我有A班:

public class A {
    @Inject private B b;
}
Run Code Online (Sandbox Code Playgroud)

现在,当我使用以下方法实例化此类时:

A a = new A();
Run Code Online (Sandbox Code Playgroud)

在这种情况下,Ab将为null.

但是如果我在另一个类中定义一个成员:

@Inject A a;
Run Code Online (Sandbox Code Playgroud)

以后使用a,ab会被正确填充吗?

CDI仅在需要注射的类也由CDI容器创建时才起作用吗?或者,如果使用普通的实例化创建一个POJO时,如果注射结果为null,我会错过什么(是的,我得到了beans.xml)?

java java-ee cdi java-ee-6

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

使用CDI对性能的影响

我正在编写一个Java EE 6 Web应用程序,我注意到在使用注入对象与直接创建和使用对象时会对性能产生重大影响.每个方法调用的开销似乎是50-60ms.

例如,使用非注入150方法调用大约需要500毫秒,而使用注入对象150方法调用需要12,000 - 13,000毫秒.一个数量级的差异然后一些.

这通常吗?

我在JBoss AS 7.1.1 final上运行,它使用Weld来处理CDI.

注入的对象被定义为单例bean(通过javax.ejb.Singleton注释).这会导致部分问题吗?或者只是Weld代理导致减速?

java cdi java-ee-6 jboss-weld jboss7.x

9
推荐指数
1
解决办法
3190
查看次数

如果maven dependecy设置为提供,则Jbos​​s 7.1.1中的Jackson @JsonSerialize被忽略

我在JBoss 7.1.1上的WAR存档中部署了Jax-rs端点.在其JSON响应中,我不希望null包含我的字段名称,所以我把@JsonSerialize它放在上面.

class MyResponse {

    private Long id;

    @JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
    private String name;

    private List<String> addresses;

    // getters and setters
}
Run Code Online (Sandbox Code Playgroud)

pom.xml有以下几点

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jaxrs</artifactId>
        <version>2.3.2.Final</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jackson-provider</artifactId>
        <version>2.3.2.Final</version>
        <scope>provided</scope>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

scopefor resteasy-jackson-provider设置为providedit时,忽略注释并返回nullJSON响应.但是,当我删除scopemaven依赖 - 它的工作原理.

从这里的页面https://docs.jboss.org/author/display/AS71/Implicit+module+dependencies+for+deployments看起来JBoss应该在发现Jax-RS部署时自动加载此模块.

现在我不知道这是不是一个bug,如果我真的应该包含这个依赖(不保留它provided).或者也许我在那里做错了什么?

jboss json jax-rs jackson java-ee-6

9
推荐指数
1
解决办法
3987
查看次数

使用groovy为java应用程序编写集成测试有什么好处?

我看到一些帖子(例如这里1)建议使用groovy在groovy编程语言中编写java应用程序的集成测试.我正在使用以下技术开发应用程序:Java 7,java EE 6,POSTGRESQL

我知道groovy是

  • 易于与java集成
  • 快速编写代码

但是有什么特别的理由将其用于IT吗?在你的代码库中添加另一种编程语言不会让你的生活变得糟糕吗?我想我错过了图片中的内容,所以我很感激您的回复.

java groovy continuous-integration integration-testing java-ee-6

9
推荐指数
1
解决办法
2349
查看次数