J'ai un projet grails qui contient quelques objets de domaine. J'utilise un projet java dans ce code qui peut analyser un document pour moi. Le contrôleur qui appelle ce projet Java utilise JAXB pour générer du code XML à partir de l'objet renvoyé par le projet Java. Je veux utiliser ce document XML (qui est généré après une analyse de texte, en utilisant JAXB) pour remplir mes classes de domaine dans mon projet grails. Comment cela fonctionne dans les grails? Puis-je utiliser quelque chose comme Castor, et créer un mapping en utilisant les noms de mes classes groovy? L'idée est de générer de nouvelles entrées dans la base de données et de les enregistrer pour l'utilisateur en fonction du texte analysé dans le document téléchargé.Unmarshalling XML avec Castor et Grails
Comment cela fonctionne même dans les grails de toute façon? Puis-je créer un nouvel objet de contrôleur de domaine d'un autre objet avec quelque chose comme
Project p = new Project();
puis faire un p.save()
?
La réponse à votre deuxième question est oui. Les domaines et les contrôleurs ne doivent pas nécessairement être en tête-à-tête. Vous pouvez avoir une classe de domaine 'Foo' et un' BarController' qui fonctionne avec 'Foo's et être très bien. –
Etes-vous lié à Castor ou êtes-vous ouvert à d'autres frameworks? Je peux vous donner un exemple en utilisant XStream; J'ai déjà travaillé avec. –
Je suis ouvert à tout - Castor était exactement ce qui m'a été suggéré - je n'ai pas beaucoup travaillé avec XML auparavant. Je suis fondamentalement en train de construire un analyseur de texte qui extraira des informations d'un document pour lequel nous avons des objets de domaine correspondants dans Grails. L'analyseur que j'ai écrit en Java, et je l'ai appelé de mon contrôleur groovy. Il renvoie une chaîne avec ma représentation XML dedans. C'est ce que je veux mapper aux Objets du Domaine de Grails. Si vous avez un petit exemple de projet de grails montrant ceci ce serait génial. J'ai également les contrôleurs pour les objets de domaine de grails à créer "manuellement" aussi bien. – Derek