diff --git a/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationGITBWS.java b/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationGITBWS.java index e7fffb747250000e2fe7c6bc021ac7ca3c664671..8cb530144184949ac5f5f3700925d318a7a223e1 100644 --- a/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationGITBWS.java +++ b/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationGITBWS.java @@ -14,7 +14,7 @@ import net.ihe.gazelle.hl7.validator.report.Error; import net.ihe.gazelle.hl7.validator.report.*; import net.ihe.gazelle.metadata.application.MetadataServiceProvider; import org.apache.commons.codec.binary.Base64; -import org.jboss.seam.annotations.In; +import org.jboss.seam.Component; import org.jboss.seam.annotations.Name; import org.jboss.seam.contexts.Lifecycle; import org.w3c.dom.bootstrap.DOMImplementationRegistry; @@ -56,7 +56,6 @@ import java.util.List; @GenerateInterface(value = "GazelleHL7v2ValidationGITBWSRemote", isLocal = false, isRemote = true) public class GazelleHL7v2ValidationGITBWS implements GazelleHL7v2ValidationGITBWSRemote, ValidationService { - @In(value = "metadataServiceProvider") MetadataServiceProvider metadataServiceProvider; private static String INPUT_METADATA = "xmlValidationMetadata"; private static String INPUT_CONTEXT = "xmlValidationContext"; @@ -79,7 +78,7 @@ public class GazelleHL7v2ValidationGITBWS implements GazelleHL7v2ValidationGITBW response.getModule().setOperation("V"); response.getModule().setMetadata(new Metadata()); response.getModule().getMetadata().setName(ValidationResultsOverview.TOOL_NAME); - response.getModule().getMetadata().setVersion(metadataServiceProvider.getMetadata().getVersion()); + response.getModule().getMetadata().setVersion(getMetadataServiceProvider().getMetadata().getVersion()); response.getModule().getMetadata().setDescription(ValidationResultsOverview.DISCLAIMER); response.getModule().setInputs(new TypedParameters()); TypedParameter xmlValidationMetadataInput = new TypedParameter(); @@ -138,7 +137,7 @@ public class GazelleHL7v2ValidationGITBWS implements GazelleHL7v2ValidationGITBW Lifecycle.beginCall(); HttpServletRequest hRequest = (HttpServletRequest) jaxwsContext.getMessageContext().get(MessageContext.SERVLET_REQUEST); HL7Validator validator = new HL7Validator(hRequest.getRemoteAddr(), xmlValidationMetadata, messageToValidate, - xmlValidationContext, metadataServiceProvider); + xmlValidationContext, getMetadataServiceProvider()); validator.validate(); ValidationResponse result = new ValidationResponse(); result.setReport(toTestReport(validateRequest, validator.getReport())); @@ -347,4 +346,11 @@ public class GazelleHL7v2ValidationGITBWS implements GazelleHL7v2ValidationGITBW reportEntry.setValue(notification.getValue()); return reportEntry; } + + private MetadataServiceProvider getMetadataServiceProvider() { + if (metadataServiceProvider == null) { + metadataServiceProvider = (MetadataServiceProvider) Component.getInstance("metadataServiceProvider"); + } + return metadataServiceProvider; + } } diff --git a/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationWS.java b/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationWS.java index f6f56432fd71f93ee2d1c34d9dff01e30d594da1..f3c39cdf0e4d40fd404bf058ef293007fa691f16 100644 --- a/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationWS.java +++ b/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v2ValidationWS.java @@ -19,7 +19,7 @@ package net.ihe.gazelle.hl7.ws; import net.ihe.gazelle.common.interfacegenerator.GenerateInterface; import net.ihe.gazelle.hl7.validator.core.HL7Validator; import net.ihe.gazelle.metadata.application.MetadataServiceProvider; -import org.jboss.seam.annotations.In; +import org.jboss.seam.Component; import org.jboss.seam.annotations.Name; import org.jboss.seam.contexts.Lifecycle; import org.w3c.dom.bootstrap.DOMImplementationRegistry; @@ -41,9 +41,7 @@ import javax.xml.ws.handler.MessageContext; @GenerateInterface(value = "GazelleHL7v2ValidationWSRemote", isLocal = false, isRemote = true) public class GazelleHL7v2ValidationWS implements GazelleHL7v2ValidationWSRemote { - @In(value = "metadataServiceProvider") MetadataServiceProvider metadataServiceProvider; - @Resource WebServiceContext jaxwsContext; @@ -66,7 +64,7 @@ public class GazelleHL7v2ValidationWS implements GazelleHL7v2ValidationWSRemote Lifecycle.beginCall(); HttpServletRequest hRequest = (HttpServletRequest) jaxwsContext.getMessageContext().get(MessageContext.SERVLET_REQUEST); HL7Validator validator = new HL7Validator(hRequest.getRemoteAddr(), xmlValidationMetadata, messageToValidate, - xmlValidationContext, metadataServiceProvider); + xmlValidationContext, getMetadataServiceProvider()); String result = validator.validate(); Lifecycle.endCall(); return result; @@ -76,7 +74,7 @@ public class GazelleHL7v2ValidationWS implements GazelleHL7v2ValidationWSRemote @WebMethod @WebResult(name = "about") public String about() { - String toolVersion = metadataServiceProvider.getMetadata().getVersion(); + String toolVersion = getMetadataServiceProvider().getMetadata().getVersion(); StringBuilder about = new StringBuilder(); about.append("GazelleHL7v2Validator"); if (toolVersion != null) { @@ -88,4 +86,11 @@ public class GazelleHL7v2ValidationWS implements GazelleHL7v2ValidationWSRemote return about.toString(); } + private MetadataServiceProvider getMetadataServiceProvider() { + if (metadataServiceProvider == null) { + metadataServiceProvider = (MetadataServiceProvider) Component.getInstance("metadataServiceProvider"); + } + return metadataServiceProvider; + } + } diff --git a/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v3ValidationWS.java b/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v3ValidationWS.java index 70885be6eb21eb432dec6815d5aefc3d10bc29bb..d6be7818dc144616ebb6921b955dacf7b4fe3320 100644 --- a/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v3ValidationWS.java +++ b/GazelleHL7v2Validator-ejb/src/main/java/net/ihe/gazelle/hl7/ws/GazelleHL7v3ValidationWS.java @@ -14,7 +14,7 @@ import net.ihe.gazelle.validation.model.ValidatorDescription; import net.ihe.gazelle.validation.ws.AbstractModelBasedValidation; import net.ihe.gazelle.validator.xcpd.plq.GazelleXCPDPLQValidator; import net.ihe.gazelle.validator.xcpd.plq.XCPDPLQValidatorType; -import org.jboss.seam.annotations.In; +import org.jboss.seam.Component; import org.jboss.seam.annotations.Name; import org.jboss.seam.contexts.Lifecycle; @@ -31,7 +31,6 @@ import java.util.List; targetNamespace = "http://ws.mb.validator.gazelle.ihe.net") public class GazelleHL7v3ValidationWS extends AbstractModelBasedValidation { - @In(value = "metadataServiceProvider") MetadataServiceProvider metadataServiceProvider; @@ -255,7 +254,7 @@ public class GazelleHL7v3ValidationWS extends AbstractModelBasedValidation { @WebMethod @WebResult(name = "about") public String about() { - String toolVersion = metadataServiceProvider.getMetadata().getVersion(); + String toolVersion = getMetadataServiceProvider().getMetadata().getVersion(); StringBuilder about = new StringBuilder(); about.append("GazelleHL7v3Validator"); if (toolVersion != null) { @@ -264,4 +263,12 @@ public class GazelleHL7v3ValidationWS extends AbstractModelBasedValidation { about.append(" is a model-based validation service for HL7v3 messages, read more on https://gazelle.ihe.net"); return about.toString(); } + + private MetadataServiceProvider getMetadataServiceProvider() { + if (metadataServiceProvider == null) { + metadataServiceProvider = (MetadataServiceProvider) Component.getInstance("metadataServiceProvider"); + } + return metadataServiceProvider; + } + }