Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 27291 invoked from network); 15 Oct 2008 17:39:57 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 15 Oct 2008 17:39:57 -0000 Received: (qmail 68303 invoked by uid 500); 15 Oct 2008 17:39:57 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 68249 invoked by uid 500); 15 Oct 2008 17:39:57 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 68240 invoked by uid 99); 15 Oct 2008 17:39:57 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 15 Oct 2008 10:39:57 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 15 Oct 2008 17:38:58 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id B9A8C238893B; Wed, 15 Oct 2008 10:39:05 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r704968 - in /geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src: main/java/org/apache/geronimo/naming/deployment/ test/resources/annotation/ Date: Wed, 15 Oct 2008 17:39:05 -0000 To: scm@geronimo.apache.org From: gawor@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20081015173905.B9A8C238893B@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: gawor Date: Wed Oct 15 10:39:04 2008 New Revision: 704968 URL: http://svn.apache.org/viewvc?rev=704968&view=rev Log: fixes for resource injection of simple env. entry types (GERONIMO-4361) Modified: geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/EnvironmentEntryBuilder.java geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/SwitchingServiceRefBuilder.java geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/env-entry-expected.xml geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/service-ref-expected.xml Modified: geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/EnvironmentEntryBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/EnvironmentEntryBuilder.java?rev=704968&r1=704967&r2=704968&view=diff ============================================================================== --- geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/EnvironmentEntryBuilder.java (original) +++ geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/EnvironmentEntryBuilder.java Wed Oct 15 10:39:04 2008 @@ -93,7 +93,6 @@ List envEntriesUntyped = convert(specDD.selectChildren(envEntryQNameSet), JEE_CONVERTER, EnvEntryType.class, EnvEntryType.type); for (EnvEntryType envEntry: envEntriesUntyped) { String name = getStringValue(envEntry.getEnvEntryName()); - addInjections(name, envEntry.getInjectionTargetArray(), componentContext); String type = getStringValue(envEntry.getEnvEntryType()); String text = getStringValue(envEntry.getEnvEntryValue()); try { @@ -125,7 +124,12 @@ } else { throw new DeploymentException("unrecognized type: " + type); } - getJndiContextMap(componentContext).put(ENV + name, value); + // perform resource injection only if there is a value specified + // see Java EE 5 spec, section EE.5.4.1.3 + if (value != null) { + addInjections(name, envEntry.getInjectionTargetArray(), componentContext); + getJndiContextMap(componentContext).put(ENV + name, value); + } } catch (NumberFormatException e) { throw new DeploymentException("Invalid env-entry value for name: " + name, e); } @@ -197,18 +201,19 @@ // env-entry-type EnvEntryTypeValuesType envEntryType = envEntry.addNewEnvEntryType(); envEntryType.setStringValue(resourceType); - } else if (method != null || field != null) { + } + if (method != null || field != null) { // injectionTarget InjectionTargetType injectionTarget = envEntry.addNewInjectionTarget(); configureInjectionTarget(injectionTarget, method, field); } - // env-entry-value + // mappedName String mappdedNameAnnotation = annotation.mappedName(); if (!mappdedNameAnnotation.equals("")) { - XsdStringType value = envEntry.addNewEnvEntryValue(); - value.setStringValue(mappdedNameAnnotation); - envEntry.setMappedName(value); + XsdStringType mappedName = envEntry.addNewMappedName(); + mappedName.setStringValue(mappdedNameAnnotation); + envEntry.setMappedName(mappedName); } //------------------------------------------------------------------------------ Modified: geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/SwitchingServiceRefBuilder.java URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/SwitchingServiceRefBuilder.java?rev=704968&r1=704967&r2=704968&view=diff ============================================================================== --- geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/SwitchingServiceRefBuilder.java (original) +++ geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/main/java/org/apache/geronimo/naming/deployment/SwitchingServiceRefBuilder.java Wed Oct 15 10:39:04 2008 @@ -300,6 +300,12 @@ serviceRef.setServiceRefType(serviceRefTypeClass); } + // injectionTarget + if (method != null || field != null) { + InjectionTargetType injectionTarget = serviceRef.addNewInjectionTarget(); + configureInjectionTarget(injectionTarget, method, field); + } + // mappedName if (!serviceRef.isSetMappedName() && annotation.mappedName().trim().length() > 0) { XsdStringType mappedName = serviceRef.addNewMappedName(); Modified: geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/env-entry-expected.xml URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/env-entry-expected.xml?rev=704968&r1=704967&r2=704968&view=diff ============================================================================== --- geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/env-entry-expected.xml (original) +++ geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/env-entry-expected.xml Wed Oct 15 10:39:04 2008 @@ -27,12 +27,15 @@ description1 Resource1 java.lang.String - mappedName1 mappedName1 org.apache.geronimo.j2ee.deployment.annotation.ResourceAnnotationTest/annotatedMethod2 java.lang.String + + org.apache.geronimo.naming.deployment.annotation.ResourceAnnotationTest + annotatedMethod2 + Modified: geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/service-ref-expected.xml URL: http://svn.apache.org/viewvc/geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/service-ref-expected.xml?rev=704968&r1=704967&r2=704968&view=diff ============================================================================== --- geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/service-ref-expected.xml (original) +++ geronimo/server/trunk/plugins/j2ee/geronimo-naming-builder/src/test/resources/annotation/service-ref-expected.xml Wed Oct 15 10:39:04 2008 @@ -34,6 +34,10 @@ javax.xml.ws.Service javax.xml.ws.Service mappedName4 + + org.apache.geronimo.naming.deployment.annotation.ResourceAnnotationTest + annotatedField2 +