2012-04-03 7 views
0

Ich benutze Jersey Framework, um zu kommunizieren (Marshalling und Unmarshalling Objekt und XML) mit REST API. Ich sende Daten (Objekt hat viele Attribute) auf diese Weise:Jersey - Datenüberprüfung vor dem Senden des Entitätsobjekts an REST api

. 
. 
ClientResponse response = webResource.type("application/xml").post(ClientResponse.class, object); 
. 

Ich mag wäre fragen, wie kann ich einige Objektattribute bestätigen (zum Beispiel privaten String-Code in Object im Format von zwei Zahlen usw. sein soll)

Antwort

0

aSie meinen im Dienst, der das Objekt empfängt? Wie hast du es versucht? Es kommt als ein Objekt, oder was auch immer Sie wollen, dass es hereinkommt. Wir nehmen häufig und dann Validierung auf dieser Karte (wenn wir entscheiden müssen, welchen Subtyp zum Beispiel aus dem Post zu erstellen). Wenn Sie Jersey Ihre Anfrage in das POJO für Sie abmelden, können Sie die gewünschte Validierung durchführen und ein Response-Objekt mit den Überprüfungsfehlerinformationen an Ihren Client zurückgeben, wenn das Objekt nicht übergeben wird.

Mit anderen Worten, die Validierung liegt bei Ihnen. Es gibt ein paar Validierungs-Frameworks, die Sie versuchen könnten zu helfen, wie javax.validation, aber IMHO ist es normalerweise einfacher, jede Eigenschaft zu testen, die Sie benötigen, um sich selbst zu validieren, indem Sie conditionals, regexps, whatever verwenden.

+0

Ich meine in meinem Client-Seite. Ich habe keinen Zugriff auf den Dienst (und seinen Quellcode), der das Objekt empfängt. Die Serverseite gab mir einige .xsd, aus denen ich einige Modellklassen generiert habe. Jetzt fülle ich diese Klassen (zum Beispiel habe ich Klasse namens Zulassung und diese Klasse hat Attribut "private String code;" ... und ich habe einige Code, zB 1234a5 in meiner Anwendung, aber dieser Wert sollte nur digital sein, so dass dieses Formular ist falsch und das richtige ist 12345) mit einigen Daten möchte ich einen Validator oder ähnliches haben, der kein ungültiges Objekt an die Server-API sendet. –

+0

Sind die Daten basierend auf dem xsd gültig? –

0

Meiner Meinung nach kommt die Validierung mit einem Webframework wie Struts, body, jfc ... um nur einige zu nennen. Dort gibt der Benutzer seine Daten in einem Formular ein, um das Objekt zu erstellen, das er an einen Dienst senden möchte. Die Webframeworks haben bereits Komponenten zur Validierung dieser Daten erhalten. Wenn es eine positive Bestätigung gab, machen Sie den Postanruf zu Ihrem Service.

Verwandte Themen