我很高兴宣布JBoss JCA 1.0的第十三次开发者快照发布。
完整的发布说明请点击此处。
安全集成
与容器的初始安全集成现已完成。
我们已在“config”目录下的属性文件中添加了指定用户和角色的可能性。
这意味着您现在可以在安全上下文中执行您的javax.resource.spi.work.Work实例,并使用JCA 1.6规范中指定的JSR-196回调。
我们将在未来的版本中考虑添加额外的安全集成插件。
Arquillian支持
看啊,太空外星人!
我们在嵌入式JCA容器设置中添加了与Arquillian项目的集成。这使得单元测试设置比以前更容易。
一个例子是
package org.jboss.jca.embedded.unit;
import org.jboss.jca.embedded.rars.simple.MessageListener;
import org.jboss.jca.embedded.rars.simple.TestActivationSpec;
import org.jboss.jca.embedded.rars.simple.TestConnection;
import org.jboss.jca.embedded.rars.simple.TestConnectionFactory;
import org.jboss.jca.embedded.rars.simple.TestConnectionInterface;
import org.jboss.jca.embedded.rars.simple.TestConnectionManager;
import org.jboss.jca.embedded.rars.simple.TestManagedConnection;
import org.jboss.jca.embedded.rars.simple.TestManagedConnectionFactory;
import org.jboss.jca.embedded.rars.simple.TestResourceAdapter;
import java.util.UUID;
import javax.annotation.Resource;
import org.jboss.arquillian.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.logging.Logger;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.jboss.shrinkwrap.api.spec.ResourceAdapterArchive;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
/**
* Unit test for Arquillian integration
*
* @author <a href="mailto:jesper.pedersen@jboss.org">Jesper Pedersen</a>
*/
@RunWith(Arquillian.class)
public class ArquillianTestCase
{
// --------------------------------------------------------------------------------||
// Class Members ------------------------------------------------------------------||
// --------------------------------------------------------------------------------||
private static Logger log = Logger.getLogger(ArquillianTestCase.class);
private static String deploymentName = "ArquillianRA";
/** The resource adapter */
@Resource
private TestConnectionFactory cf;
/**
* Define the deployment
* @return The deployment archive
*/
@Deployment
public static ResourceAdapterArchive createDeployment()
{
ResourceAdapterArchive raa =
ShrinkWrap.create(ResourceAdapterArchive.class, deploymentName + ".rar");
JavaArchive ja = ShrinkWrap.create(JavaArchive.class,
UUID.randomUUID().toString() + ".jar");
ja.addClasses(MessageListener.class, TestActivationSpec.class, TestConnection.class,
TestConnectionFactory.class, TestConnectionManager.class,
TestConnectionInterface.class, TestManagedConnection.class,
TestManagedConnectionFactory.class, TestResourceAdapter.class);
raa.addLibrary(ja);
raa.addManifestResource("simple.rar/META-INF/ra.xml", "ra.xml");
return raa;
}
//-------------------------------------------------------------------------------------||
// Tests ------------------------------------------------------------------------------||
//-------------------------------------------------------------------------------------||
/**
* Basic
* @exception Throwable Thrown if case of an error
*/
@Test
public void testBasic() throws Throwable
{
assertNotNull(cf);
}
}
所以当你的老板问你为什么你没有为资源适配器创建一个合适的测试套件时,你会说什么呢?!!!
代码生成器
我们的代码生成器在本月进行了大量更新,增加了对所有JCA规范的全支持,并且现在甚至为资源适配器创建测试套件设置。
代码生成器现在具有以下功能
- JCA 1.6使用注解
- JCA 1.6使用元数据
- JCA 1.5
- JCA 1.0
- 测试套件
- Apache Ant构建环境
我们将在下一个版本中继续添加更多功能,但请确保向我们发送对其实用性的反馈。
容器更改
我们的Jetty集成已移动到容器布局中的“system”目录,以便在不使用此功能的情况下轻松卸载此功能。
我们将Jetty的版本升级到7.1.4,以跟上其开发。
未来的道路
本版本发布使我们的第一个项目Beta版本更近一步 :) 我们仍有一些待办事项需要修复,但我们正在努力推进发布工作。
周一在JUDCon见!
摇滚吧,我们为你致敬!