2013-04-15 2 views
0

Я этот классУстановка пустая строка, как XSI: ноль = истина

package com.ni.schemas.provider_framework._1.providers; 

import java.math.BigInteger; 
import javax.xml.bind.annotation.XmlAccessType; 
import javax.xml.bind.annotation.XmlAccessorType; 
import javax.xml.bind.annotation.XmlElement; 
import javax.xml.bind.annotation.XmlType; 


/** 
* 
*     This is the top-level for a Request. 
*     Providers may extend this type if needed, but may not restrict it by blocking the pre-defined elements 
*    
* 
* <p>Clase Java para RequestErrorType complex type. 
* 
* <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase. 
* 
* <pre> 
* &lt;complexType name="RequestErrorType"> 
* &lt;complexContent> 
*  &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> 
*  &lt;sequence> 
*   &lt;element name="httpResponseCode" type="{http://www.w3.org/2001/XMLSchema}integer"/> 
*   &lt;group ref="{http://www.ni.com/schemas/provider-framework/1/providers}ErrorElementGroup"/> 
*  &lt;/sequence> 
*  &lt;/restriction> 
* &lt;/complexContent> 
* &lt;/complexType> 
* </pre> 
* 
* 
*/ 
@XmlAccessorType(XmlAccessType.FIELD) 
@XmlType(name = "RequestErrorType", propOrder = { 
    "httpResponseCode", 
    "summary", 
    "userMessage", 
    "detail" 
}) 
public class RequestErrorType { 

    @XmlElement(required = true) 
    protected BigInteger httpResponseCode; 
    protected String summary; 
    protected String userMessage; 
    protected String detail; 

    /** 
    * Obtiene el valor de la propiedad httpResponseCode. 
    * 
    * @return 
    *  possible object is 
    *  {@link BigInteger } 
    *  
    */ 
    public BigInteger getHttpResponseCode() { 
     return httpResponseCode; 
    } 

    /** 
    * Define el valor de la propiedad httpResponseCode. 
    * 
    * @param value 
    *  allowed object is 
    *  {@link BigInteger } 
    *  
    */ 
    public void setHttpResponseCode(BigInteger value) { 
     this.httpResponseCode = value; 
    } 

    /** 
    * Obtiene el valor de la propiedad summary. 
    * 
    * @return 
    *  possible object is 
    *  {@link String } 
    *  
    */ 
    public String getSummary() { 
     return summary; 
    } 

    /** 
    * Define el valor de la propiedad summary. 
    * 
    * @param value 
    *  allowed object is 
    *  {@link String } 
    *  
    */ 
    public void setSummary(String value) { 
     this.summary = value; 
    } 

    /** 
    * Obtiene el valor de la propiedad userMessage. 
    * 
    * @return 
    *  possible object is 
    *  {@link String } 
    *  
    */ 
    public String getUserMessage() { 
     return userMessage; 
    } 

    /** 
    * Define el valor de la propiedad userMessage. 
    * 
    * @param value 
    *  allowed object is 
    *  {@link String } 
    *  
    */ 
    public void setUserMessage(String value) { 
     this.userMessage = value; 
    } 

    /** 
    * Obtiene el valor de la propiedad detail. 
    * 
    * @return 
    *  possible object is 
    *  {@link String } 
    *  
    */ 
    public String getDetail() { 
     return detail; 
    } 

    /** 
    * Define el valor de la propiedad detail. 
    * 
    * @param value 
    *  allowed object is 
    *  {@link String } 
    *  
    */ 
    public void setDetail(String value) { 
     this.detail = value; 
    } 

} 

Если я хочу, чтобы установить переменную userMessage к нулю, на дисплее времени, просто показывает, что это

<userMessage /> 

и мне нужно показать

<userMessage xsi:nil="true" /> 

Как это сделать?

+0

Если вы хотите, чтобы все ваши элементы были безжизненными, вы генерируете объекты JAXB из WSDL/XSD, тогда вы можете сказать генератору, что вы добавите 'XmlElement (nillable = true)' для вас. –

+0

Что вы имеете в виду, говоря генератор? Как мне это сделать? – Nacho321

ответ

1

Используя следующее будет относиться к нуль как ноль, когда ранжированы

@XmlElement(nillable = true) 
protected String userMessage; 

Если WSDL/XSD имеет элемент оп ределяется, как nillable, то генерация кода будет генерировать следующий

protected JaxbElement<String> userMessage; 

I может сказать из вашего javadoc, что генерируемый код не является тем, что вы используете сегодня. Если вы сталкиваетесь с другой веб-службой, я предлагаю создать правильные объекты dto из своего wsdl. Вы можете посмотреть документацию для xjc.exe и wsdl.exe, которые находятся в вашем каталоге jdk/bin.

Смежные вопросы