- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 wildfly 8.2.0-Final 上定义带有注释和部署描述符的消息驱动 bean。我想用注释声明配置的静态部分,用 xml 部署描述符声明变量部分。部署以下 mdb 时,出现异常。
这是 .failed-File 的内容:
{"JBAS014671: Failed services" => {"jboss.deployment.unit.\"MdbWithAnnotationsAndDescritors.jar\".component.NewMessageBean.START" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"MdbWithAnnotationsAndDescritors.jar\".component.NewMessageBean.START: java.lang.RuntimeException: javax.resource.spi.InvalidPropertyException: Destination is mandatory Caused by: java.lang.RuntimeException: javax.resource.spi.InvalidPropertyException: Destination is mandatory Caused by: javax.resource.spi.InvalidPropertyException: Destination is mandatory"}}
mdb 是
package test;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.JMSDestinationDefinition;
import javax.jms.Message;
import javax.jms.MessageListener;
@JMSDestinationDefinition(name = "testQueue", interfaceName = "javax.jms.Queue", resourceAdapter = "jmsra", destinationName = "testQueue")
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue")
})
public class NewMessageBean implements MessageListener {
public NewMessageBean() {
}
@Override
public void onMessage(Message message) {
}
}
和 jboss.xml 部署描述符:
<jboss xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss_5_0.xsd" version="3.0">
<security-domain>tutorial-default</security-domain>
<enterprise-beans>
<message-driven>
<ejb-name>testQueue</ejb-name>
<destination-jndi-name>testQueue</destination-jndi-name>
</message-driven>
</enterprise-beans>
</jboss>
ejb-jar.xml 为空:
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns="http://xmlns.jcp.org/xml/ns/javaee"
version="3.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd">
</ejb-jar>
最佳答案
明白了,我将目标 ActivationConfigProperty 添加到 mdb 类中以消除异常:
package test;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.JMSDestinationDefinition;
import javax.jms.Message;
import javax.jms.MessageListener;
/**
*
* @author rainer
*/
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "willBeOverwrittenInDeploymentDescriptor")
})
public class NewMessageBean implements MessageListener {
public NewMessageBean() {
}
@Override
public void onMessage(Message message) {
}
}
我删除了 JMSDestinationDefinition,因为不需要它,我使用管理控制台创建了队列。为了覆盖目标 jndi 名称,我创建了以下 ejb-jar.xml
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd">
<enterprise-beans>
<message-driven>
<ejb-name>NewMessageBean</ejb-name>
<ejb-class>test.NewMessageBean</ejb-class>
<activation-config>
<activation-config-property>
<activation-config-property-name>destination</activation-config-property-name>
<activation-config-property-value>/jms/testClientQueue</activation-config-property-value>
</activation-config-property>
</activation-config>
</message-driven>
</enterprise-beans>
</ejb-jar>
现在 mdb 已部署并监听队列 jms/testClientQueue
关于wildfly-8 - 混合注释和部署描述符时为 "Destination is mandatory",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28029735/
当另一个 [关联] 字段具有特定值时,如何使必填字段成为非必填字段? 假设我有以下模型: class foo(models.Model): bar = models.CharField(max
我有一个父表 Venue (venueId[PK],venueName) 和两个子表,Performance (performanceId[PK], performanceName) 和 Meal (
总结:我需要将 YAML 格式的数据解析为 golang 结构。是否有一种方法(库、属性)使某些字段成为必需字段,即如果某些字段不存在,则使 Unmarshal 函数返回错误? 例如想要什么:此代码中
我想知道 SSL 证书和以 https:// 开头的 URL 是否对于 Telegram 机器人的 webhook 是必需的?正如它在 https://core.telegram.org/bots/a
我需要强制使用 Django User 模型中的电子邮件字段。如何做到这一点对我来说并不明显。欢迎提出建议。我目前正在使用: from django.contrib.auth.forms import
我有以下 XSD 验证: SchemaFactory schemaFactory = SchemaFactory .newInstance(XMLConstants.W3C_XM
使用带有 的响应式图像集时如果没有断点(即没有 sizes 属性),您通常会提供不同分辨率的同一图像的多个版本,然后您在 srcset 中定义这些版本使用像素密度语法的属性,例如1x , 2x ,
不少网站不需要注册人验证他们的电子邮件,而且它们似乎运行良好,而无需您经历这种(轻微的)考验。 这种机制可以确保电子邮件的有效性并阻止不受欢迎的机器人似乎是合乎逻辑的,但是它是否适用于低用户功能的网站
我正在尝试在 wildfly 8.2.0-Final 上定义带有注释和部署描述符的消息驱动 bean。我想用注释声明配置的静态部分,用 xml 部署描述符声明变量部分。部署以下 mdb 时,出现异常。
我需要在没有沙盒的情况下分发我的应用程序,因为我需要可访问性 API。有谁知道如果我在没有启用沙盒的情况下提交应用程序是否会被拒绝(有充分的理由)? 在 Mac 中 App Store Guideli
我们有一个通过 Web Start 使用 JNLP 启动的应用程序,使用以下内容来确保应用程序仅使用最新代码运行: title.... vendor nam
我发现这令人费解且违反直觉: 为什么会这样: LoggingConfiguration config = LogManager.Configuration; config.LoggingRules.A
我在 Play 中发现了有趣的东西!框架表单验证。例如我有这样的形式: case class Foo(mystring: String, myint: Int, mybool: Boolean) {
我有一个 Activity 类,它被注释为一个调用 Action 类的组件: @Transactional(propagation = Propagation.REQUIRED, readOnly
我是 azure 管道的新手。我有使用 azure 管道的构建作业,源代码位于同一分支开发中并且运行良好,但是是否可以在单独的分支中拥有 azure 管道和源代码? 如果是这样,请帮助我 此外,我如何
我们正在尝试以编程方式在开发测试实验室中启用强制工件。我们发现:https://learn.microsoft.com/en-us/azure/templates/microsoft.devtestl
我们正在尝试以编程方式在开发测试实验室中启用强制工件。我们发现:https://learn.microsoft.com/en-us/azure/templates/microsoft.devtestl
我希望我可以设置一个 cmdlet,以便它可以使用环境变量作为参数值(如果存在),或者以其他方式提示。 function Test-Mandatory { [CmdletBinding()]
好的,首先是一些代码。这是我的 displayCollection.tag 的内容: ${irc.mgrid} 这是我从 (myq.jsp) 调用它的 JSP: 这是 irColle
这是BeanClass.java package com.practice.spring; import org.springframework.beans.factory.annotation.Re
我是一名优秀的程序员,十分优秀!