Domanda

Sto incontrando un problema per cui ho campi in una forma che ha nomi variabile nel nome di attributi che devono passare in un servizio, ma non può farlo perché non posso definirlo in services.xml

Lo scenario è che, Ho una forma importante, e non c'è questa sezione sub di campi che vengono aggiunti ad esso attraverso l'Ajax. Questi campi rappresentano una serie di dati e non sono obbligatorie, che significa alcuni dei campi possono essere vuoti. Esempio, nei campi aggiunti, ho un campo di ID, quantità e controllare no. L'utente può scegliere di compilare ID e la quantità, ma non senza il controllo. Non ci può essere più righe di ID, gli importi e nos controllo aggiunti alla forma principale.

In un primo momento ho nominare tutti questi campi usando lo stesso nome, e li passano al servizio come una lista. E le grandi opere fino a quando ho scoperto che se non compilare il controllo no, l'assegno nessuna lista sarà effettivamente nullo e non una lista con una stringa vuota. Questo sta causando mi problema da mappare correttamente nel servizio.

Poi ho provato ad utilizzare il metodo della vecchia scuola, vale a dire con un contatore in un campo nascosto e li hanno chiamato con un suffisso che rappresenta il contatore. E poi ho scoperto che non posso definire in modo dinamico gli attributi nel services.xml

Qualcuno incontro come problema prima? Qualsiasi consiglio o aiuto?

È stato utile?

Soluzione

La soluzione che ho usato per risolvere questo problema è l'aggiunta di una Classe di evento per filtrare la richiesta prima di chiamare il servizio per fare il trattamento effettivo. In questo modo posso ottenere i parametri in forma grezza e non si basa sulla definizione del servizio di OFBiz per ottenere i valori per me.

Altri suggerimenti

E 'possibile contrassegnare tutti i campi opzionali come optional in servizio file di definizione ie.services.xml Per esempio: attributo name = "check no" type = modalità "String" = "IN" opzionale = "true" />

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top