我有点困惑,我们将CDI bean称为使用@inject注释或我们在其中使用@inject的bean注入它们的bean?
创建ShrinkWrap后,我可以使用这行代码查看文件结构
System.out.println(webArchive.toString(true));
Run Code Online (Sandbox Code Playgroud)
我想知道是否有可能在shrinkWrap中看到特定文件的内容,例如我想在创建shrinkWrap后看到我的persistence.xml的内容.
是否有任何特定的代码片段来打印shrinkWrap中的文件内容?或者文件系统中是否有任何地方可以查找临时的shrinkWrap文件并浏览它的文件和内容
我有一个用于登录/注册操作的模态面板,如果使用bootstarp-notify登录失败,我会通知,但通知会出现在模态面板的模糊(禁用区域)之外.我想知道如何将我的通知附加到我的模态面板或(这对我来说是一个更好的解决方案)如何在前台显示通知而不是在模糊禁用屏幕下.我检查了bootstarp-notify 文档中的" element "参数,但我无法找到应该如何使用它.我应该使用jquery选择器指出元素或只是id或名称.
我在tomcat 7上使用Hibernate和Weld CDI运行一个项目.我已经编写了一个ServletContextListener来在应用程序启动期间创建EntityManagerFactory和EntityManager.
public class PersistenceListener implements ServletContextListener {
private static EntityManagerFactory entityManagerFactory;
public void contextInitialized(ServletContextEvent sce){
ServletContext context = sce.getServletContext();
entityManagerFactory = Persistence.createEntityManagerFactory("hibernate-test");
}
public void contextDestroyed(ServletContextEvent sce) {
entityManagerFactory.close();
}
public static EntityManager createEntityManager() {
if (entityManagerFactory == null) {
throw new IllegalStateException("Context is not initialized yet.");
}
return entityManagerFactory.createEntityManager();
}
}
Run Code Online (Sandbox Code Playgroud)
我可以通过以下代码创建它,在我的测试类(它是一个arquillian测试类)中使用我的entityManager
EntityManager em = PersistenceListener.createEntityManager();
em.getTransaction().begin();
em.createQuery("delete from Game").executeUpdate();
em.getTransaction().commit();
Run Code Online (Sandbox Code Playgroud)
这是我的测试类的完整代码
@RunWith(Arquillian.class)
public class HibernateTestSample {
@Deployment
public static WebArchive createTestArchive()
{
MavenDependencyResolver resolver = DependencyResolvers.use( …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过代理调用 webservice 方法,但我收到一条错误消息:“目标类的子资源没有 jax-rs 注释。:org.jboss.resteasy.core.ServerResponse”
这是我的服务器类
@Path("/authorizationCheck")
public class AuthorizationRestService implements AuthorizationService {
@Override
@Path("/webserviceTest")
public Response webserviceTest(){
TestDTO x = new TestDTO();
x.setFieldOne("ffff");
x.setFieldTwo("gggg");
Response res = Response.ok(x).build();
return res;
}
}
Run Code Online (Sandbox Code Playgroud)
有这样的界面
@Path("/authorizationCheck")
public interface AuthorizationService {
@POST
@Path("/webserviceTest")
public Response webserviceTest();
}
Run Code Online (Sandbox Code Playgroud)
我的返回对象包裹在响应中
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class TestDTO {
private String fieldOne;
private String fieldTwo;
public String getFieldOne() {
return fieldOne;
}
public void setFieldOne(String fieldOne) {
this.fieldOne = fieldOne;
}
public String getFieldTwo() {
return fieldTwo; …Run Code Online (Sandbox Code Playgroud) 我用来<property name="hibernate.hbm2ddl.auto" value="validate" />根据数据库验证 java 项目。但我想跳过对specidc实体列的验证,因为它们有错误的映射,但我不想更改java项目或数据库中的那些。(无需验证即可正常工作,但我想在项目中打开验证)
是否有任何注释可以跳过特定实体字段的映射验证?
我不确定我是否理解这两种类型的tomcats(嵌入式和托管式)之间的区别.
我将在tomcat上为我的项目设置arquillian测试,我必须在嵌入式tomcat或托管tomcat之间进行选择(因为有不同的ppom.xml设置和依赖项).请告诉我有什么不同,我应该选择哪一个来运行我的arquillian测试.
也许这似乎是一个愚蠢的问题,但我真的很困惑.Seam 3和Weld CDI是一样的吗?我读一些职位,其中提到"CDI(焊接)/接缝3",我应该把它们看成是一回事吗?