Tag: 绑定

JiBX:如何在代码中继续使用接口?

如何在我想使用JiBX绑定的类中保留我的使用接口? 示例:我在java中有这个非常简单的模型: public interface A { B getB(); void setB(B b); } public interface B { String getData(); void setData(String data); } public class AImpl implements A { B b; @Override public B getB() { return b; } @Override public void setB(B b) { this.b = b; } } public class BImpl implements B { […]

为什么JAXB说“xxx是一个接口,而JAXB无法处理接口”。 即使生成的类不是接口

我使用JAXB来绑定我的xsd,然后尝试创建JAXBContext: JAXBContext jaxbContext = JAXBContext.newInstance(“my package name”); 但是JAXB提供了180个IllegalAnnotationsException。 大多数例外都有以下消息: XXX是一个接口,JAXB无法处理接口 XXX没有no-arg默认构造函数 @XmlAttribute / @ XmlValue需要引用映射到XML文本的Java类型。 当我查看生成的类时,它们都不是接口,我无法理解为什么JAXB将它们解释为接口。 这是JAXB报告的错误之一的堆栈跟踪: com.sc.md.datatypes.schemas.csemessage.EnvelopeType is an interface, and JAXB can’t handle interfaces. this problem is related to the following location: at com.sc.md.datatypes.schemas.csemessage.EnvelopeType at protected com.sc.md.datatypes.schemas.csemessage.EnvelopeType com.sc.md.datatypes.schemas.csemessage.cseMessage.envelope at com.sc.md.datatypes.schemas.csemessage.cseMessage com.sc.md.datatypes.schemas.csemessage.EnvelopeType does not have a no-arg default constructor. this problem is related to […]

如何使用外部绑定文件覆盖JAXB中的默认名称?

我有一个看起来像这样的元素。 以下是为此元素创建的默认代码。 @XmlElements({ @XmlElement(name = “navmap”, type = Navmap.class), @XmlElement(name = “keymap”, type = Keymap.class), @XmlElement(name = “container”, type = Container.class), @XmlElement(name = “ad”, type = Ad.class), @XmlElement(name = “button”, type = Button.class), @XmlElement(name = “checkbox”, type = Checkbox.class), }) protected List navmapOrKeymapOrContainer; 我的问题是我需要在我的 .xjb 绑定文件中 放置什么来将 默认生成的名称从 navmapOrKeymapOrContainer 为其他类似的 children ?

guice:命令行的运行时注入/绑定

我有以下问题: @Inject MyClass(Service service) { this.service = service; } public void doSomething() { service.invokeSelf(); } 我有一个模块 bind(service).annotatedWith(Names.named(“serviceA”).to(ServiceAImpl.class); bind(service).annotatedWith(Names.named(“serviceB”).to(ServiceBImpl.class); 现在我的问题是我希望允许用户通过命令行参数动态选择运行时基础上的注入。 public static void Main(String args[]) { String option = args[0]; ….. } 我怎么能这样做? 我是否必须创建多个模块才能执行此操作?

如何在Play中将复选框绑定到布尔值! 骨架

我正在使用Play的应用程序! Framework有一个名为gift的对象,它带有一个名为Taken的布尔属性。 如何在我的视图中将此值的状态显示为复选框? 我试过了 :- 基于我从自动生成的CRUD表单中看到的示例,但是当属性为True时不检查复选框,这正是我的目标。 有人知道实现这个目的的正确方法吗?

JavaFX 2:包含文本的可resize的矩形

我想显示一个包含文本/标签的矩形。 为此,我创建了一个堆栈窗格,并为其添加了一个矩形和一个标签。 但是文本/标签未正确居中。 它位于矩形之外(左侧)。 这是我目前使用的代码: createRectangle(String name) { pane = new StackPane(); text = new Label(name); rect = new Rectangle(); // bind rectangle width to text width and add 10 rect.widthProperty().bind(text.widthProperty().add(10)); rect.heightProperty().bind(text.heightProperty().add(10)); // add to stackpane pane.getChildren().addAll(rect,text); // display stackpane getChildren().add(pane) } 我已经尝试绑定矩形的xProperty()和yProperty(),更改stackpane(setAlignment(Pos.CENTER))和其他东西的对齐方式,但没有成功。 当我使用固定的矩形大小(例如新的矩形(30,30))并且不使用绑定时,标签在矩形内正确居中。 但是,矩形的大小需要根据标签大小进行调整: // label is placed correctly in the center of the […]

JavaFX绑定到多个属性

我有一个带文本字段和按钮的简单fxml。 如果文本字段为空,我想禁用该按钮。 所以我在我的控制器中插入如下内容: @Override public void initialize(URL url, ResourceBundle bundle) { button.disableProperty().bind(textField.textProperty().isEqualTo(“”)); } ..并且工作正常。 问题是当我添加第二个文本字段并希望如果任一文本字段为空时我的按钮被禁用。 该怎么办? 我尝试了以下,但这不起作用: @Override public void initialize(URL url, ResourceBundle bundle) { button.disableProperty().bind(textField.textProperty().isEqualTo(“”)); button.disableProperty().bind(textField2.textProperty().isEqualTo(“”)); }

JAXB将具有相同名称空间的多个文件绑定到同一个包

我有这样的架构层次结构: common |—legacy | |—legacy.xsd xmlns=”http://common/legacy” | |—other.xsd xmlns=”http://common/legacy” | ‘—….xsd xmlns=”http://common/legacy” |—send |—file.xsd xmlns=”http://common/send” ‘—text.xsd xmlns=”http://common/send” ‘—….xsd xmlns=”http://common/send” 一个文件夹中的所有文件具有相同的命名空间 现在我想将命名空间映射到特定的java包(我无法更改命名空间)。 我找到了一个将模式绑定到包的解决方案。 但是我必须为每个xsd文件创建一个条目: ….. 有没有办法直接定义命名空间和包名称之间的绑定? 另一种方法是在maven中定义包: org.jvnet.jaxb2.maven2 maven-jaxb2-plugin com.company/legacy 但是我必须为每个文件夹创建一个执行,这不是我想要的。

Java Arry索引超出绑定exception

当我需要将5个用户输入的值存储到数组中,将其发送到方法,并查找并显示最低值时,我一直在研究这个基本的java程序。 该程序很简单,它运行,但当我输入最后一个数字时,我收到错误: 线程“main”中的exceptionjava.lang.ArrayIndexOutOfBoundsException:4 at minNumber.main(minNumber:14) 救命? import java.util.*; class minNumber { public static void main(String args[]){ Scanner input = new Scanner(System.in); int numberArray[] = new int[4]; int findLowest; for (int i = 0; i <= numberArray.length; i++){ System.out.println("Enter a value for slot "+(i+1)+ ":"); numberArray[i] = input.nextInt(); } findLowest = getMin(numberArray); displayOutput(findLowest); } public static […]

Java绑定exception

什么会导致TCP套接字抛出“java.net.BindException:地址已在使用”,即使重用地址设置为true? 仅当应用程序快速重新启动时才会出现这种情况。 在CentOS 5 linux OS上运行。