• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 398
  • Last Modified:

java stringvalue

   public void setUserName(JAXBElement<StringValue> value) {
        this.userName = ((JAXBElement<StringValue> ) value);
    }

how should i call this function
setUserName("example"); is not working :(
i need to send example word to this function thanks
0
3XLcom
Asked:
3XLcom
  • 6
  • 4
1 Solution
 
cyberkiwiCommented:
setUsername(new JABXElement("example"))
0
 
3XLcomAuthor Commented:
Not worked unfortunatelly
JABXElement as seems is not known :(
0
 
cyberkiwiCommented:
Sorry I misspelled

setUsername(new JAXBElement<StringValue>("example"))
0
Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

 
rockiroadsCommented:
Are you using some kind of web services? Think you need to setup your xml schema, from which you get java classes.
have a look at this tutorial https://jaxb.dev.java.net/tutorial/
0
 
cyberkiwiCommented:
Actually there is no simple string constructor for JAXBElement

JAXBElement(QName name, Class<T> declaredType, Class scope, T value)
JAXBElement(QName name, Class<T> declaredType, T value)

Try this:


QName qName = new QName("http://tempuri", "Test");
JAXBElement<String> el = new JAXBElement<String>(qName, String.class, null, "example");
setUsername(el);
0
 
3XLcomAuthor Commented:
I've made sth. Like This but it returns null value i think i have so close to solution  :

   public JAXBElement<PmumService.StringValue> getUserName() {
        javax.xml.bind.JAXBElement<PmumService.StringValue> bilgi = null;
        PmumService.StringValue bilgim = new PmumService.StringValue() ;
        bilgim.setV("Pass");
        bilgi.setValue(bilgim) ;
        return bilgi;
    }

In PmumService library :


@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "StringValue")
public class StringValue {

    @XmlAttribute(name = "v")
    protected String v;

    /**
     * Gets the value of the v property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *    
     */
    public String getV() {
        return v;
    }

    /**
     * Sets the value of the v property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *    
     */
    public void setV(String value) {
        this.v = value;
    }

}
0
 
3XLcomAuthor Commented:
cyberkiwi it works when it is string but when i change it to stringvalue it is not working
Thank you
0
 
3XLcomAuthor Commented:
Please i need help The code given below is worked but the problem is returns null reference for
UName and Pass
javax.xml.ws.Holder<PmumService.IntValue> Bilgi1;
    javax.xml.ws.Holder<PmumService.StringValue> Bilgi2;
     @XmlElementRef(name = "UserName", type = JAXBElement.class, required = false)
    protected JAXBElement<PmumService.StringValue> UName;
     @XmlElementRef(name = "PassWord", type = JAXBElement.class, required = false)
    protected JAXBElement<PmumService.StringValue> pass;
    public void callWebService() {
        PmumService.EVDServis services = new PmumService.EVDServis();
        System.out.print(services.getWSDLDocumentLocation());
        PmumService.LoginMessage LMessage  = new PmumService.LoginMessage();

        PmumService.StringValue bilgim = new PmumService.StringValue() ;
        bilgim.setV("ad");
        System.out.print("bb : " + UName.getName());
        UName.setValue(bilgim);

        PmumService.StringValue bilgim2 = new PmumService.StringValue() ;
        bilgim2.setV("Pass");
        pass.setValue(bilgim2);


        LMessage.setUserName(UName);
        LMessage.setPassword(pass);
        PmumService.IntValue vl = new PmumService.IntValue();
        vl.setV(null);
        Bilgi1.value=vl;
        services.getEVDServisSOAP11PortHttp().login(LMessage, Bilgi1, Bilgi2);
        System.out.print("Son : " + Bilgi2.value);

Open in new window

0
 
cyberkiwiCommented:
The following doesn't work because gilgi is null

 public JAXBElement<PmumService.StringValue> getUserName() {
        javax.xml.bind.JAXBElement<PmumService.StringValue> bilgi = null;
        PmumService.StringValue bilgim = new PmumService.StringValue() ;
        bilgim.setV("Pass");
        bilgi.setValue(bilgim) ;  // bilgi was set to null 3 lines ago. cannot call setValue on null
        return bilgi;
    }

Try this for unit testing setUserName

QName qName = new QName("http://tempuri", "Test");
StringValue sv = new StringValue() ;
sv.setV("example");
JAXBElement<StringValue> el = new JAXBElement<StringValue>(qName, StringValue.class, null, sv);
setUsername(el);


0
 
3XLcomAuthor Commented:
It worked please check this out also :
http://www.experts-exchange.com/Programming/Languages/Java/Q_26455003.html
One last part i need
0
 
3XLcomAuthor Commented:
It worked please check this out also :
http://www.experts-exchange.com/Programming/Languages/Java/Q_26455003.html
One last part i need
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 6
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now