Provando a non utilizzare le mappe:
codice:package beans; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class Word { private String parola; private String definizione; public Word(){} public Word(String parola, String definizione) { this.parola = parola; this.definizione = definizione; } public String getDef() { return definizione; } public void setDef(String definizione) { this.definizione = definizione; } }codice:package beans; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement @XmlAccessorType (XmlAccessType.FIELD) public class Words { @XmlElement(name="words") private List<Word> wordslist; private static Words instance; public void Users() { wordslist = new ArrayList<Word>(); } //singleton public synchronized static Words getInstance(){ if(instance==null) instance = new Words(); return instance; } public synchronized List<Word> getWordslist() { return new ArrayList<>(wordslist); } // public void setWordslist(List<Word> wordslist) {this.wordslist = wordslist;} public synchronized void add(Word w){ wordslist.add(w); } /*public User getByName(String name){ List<User> usersCopy = getUserslist(); for(User u: usersCopy) if(u.getName().toLowerCase().equals(name.toLowerCase())) return u; return null; }*/ }codice:package services; import beans.Word; import beans.Words; import javax.ws.rs.Consumes; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Response; @Path("words") public class WordsService { //restituisce la lista di parole @GET @Produces({"application/json", "application/xml"}) public Response getWordsList(){ return Response.ok(Words.getInstance()).build(); } //permette di inserire una parola (nome e definizione) @Path("add") @POST @Consumes({"application/json", "application/xml"}) public Response addWord(Word w){ Words.getInstance().add(w); return Response.ok().build(); } }

Rispondi quotando
sono agli inizi
