[JBoss JIRA] Updated: (SOLDER-23) Provide utility to extract type parameter from Instance
by Shane Bryzak (JIRA)
[ https://issues.jboss.org/browse/SOLDER-23?page=com.atlassian.jira.plugin.... ]
Shane Bryzak updated SOLDER-23:
-------------------------------
Fix Version/s: The Future
(was: 3.0.0.Final)
> Provide utility to extract type parameter from Instance
> -------------------------------------------------------
>
> Key: SOLDER-23
> URL: https://issues.jboss.org/browse/SOLDER-23
> Project: Seam Solder
> Issue Type: Feature Request
> Components: Reflections
> Affects Versions: 3.0.0.Beta1
> Reporter: Dan Allen
> Assignee: Dan Allen
> Priority: Minor
> Fix For: The Future
>
>
> When discovering injection points, a type of Instance<T> is effectively the same as discovering a type T. You don't want to create a producer method for an Instance, for instance, hence why you want to figure out what T is. Thus, it's common to want to extract the type parameter from Instance. Having a utility would be convenient.
> Here's an example that collects the actual bean types (extracting from the Instance type parameter if necessary)
> Set<Type> types = new HashSet<Type>();
> for (InjectionPoint ip : event.getInjectionTarget().getInjectionPoints())
> {
> types.add(Reflections.getActualType(ip.Type()));
> }
> Here's the utility:
> private static Type getActualType(Type t)
> {
> if (t instanceof ParameterizedType && ((ParameterizedType) t).getRawType().equals(Instance.class))
> {
> return ((ParameterizedType) t).getActualTypeArguments()[0];
> }
> return t;
> }
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years
[JBoss JIRA] Updated: (SOLDER-12) Add isMetadataChanged() accessor to AnnotatedTypeBuilder
by Shane Bryzak (JIRA)
[ https://issues.jboss.org/browse/SOLDER-12?page=com.atlassian.jira.plugin.... ]
Shane Bryzak updated SOLDER-12:
-------------------------------
Fix Version/s: The Future
(was: 3.0.0.Final)
> Add isMetadataChanged() accessor to AnnotatedTypeBuilder
> --------------------------------------------------------
>
> Key: SOLDER-12
> URL: https://issues.jboss.org/browse/SOLDER-12
> Project: Seam Solder
> Issue Type: Feature Request
> Components: Builders
> Affects Versions: 3.0.0.Beta1
> Reporter: Dan Allen
> Assignee: Dan Allen
> Priority: Minor
> Fix For: The Future
>
>
> As an optimization, it makes sense to only create the AnnotatedType and assign it to ProcessAnnotatedType if the metadata has changed in anyway. Otherwise, you are wrapping the type just for the sake of wrapping it.
> Therefore, I propose that any change to the state of the annotated type be tracked by a changed flag that is accessible by calling the AnnotatedTypeBuilder#isMetadataChanged() (or similarly named) method. It would be used as follows:
> AnnotatedTypeBuilder b = AnnotatedTypeBuilder.readFromType(event.getAnnotatedType(), true);
> // do extension logic
> if (b.isMetadataChanged())
> {
> event.setAnnotatedType(b.create());
> }
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years
[JBoss JIRA] Updated: (SOLDER-6) Poor error message when there are multiple generic producer methods resolved
by Shane Bryzak (JIRA)
[ https://issues.jboss.org/browse/SOLDER-6?page=com.atlassian.jira.plugin.s... ]
Shane Bryzak updated SOLDER-6:
------------------------------
Fix Version/s: The Future
(was: 3.0.0.Final)
> Poor error message when there are multiple generic producer methods resolved
> ----------------------------------------------------------------------------
>
> Key: SOLDER-6
> URL: https://issues.jboss.org/browse/SOLDER-6
> Project: Seam Solder
> Issue Type: Bug
> Components: Generic Beans
> Affects Versions: 3.0.0.Beta1
> Reporter: Pete Muir
> Fix For: The Future
>
>
> org.jboss.arquillian.impl.event.FiredEventException: org.jboss.weld.exceptions.DeploymentException: WELD-001409 Ambiguous dependencies for type [BlobStore] with qualifiers [@TestContainer] at injection point [[field] @Inject @TestContainer private org.jboss.seam.jclouds.test.blobstore.Consumer.blobStore]. Possible dependencies [[Producer Method [BlobStore] with qualifiers [@Any @GenericMarker @Synthetic] declared as [[method] @Produces public org.jboss.seam.jclouds.blobstore.BlobStoreManager.getBlobStore()], Producer Method [BlobStore] with qualifiers [@Any @GenericMarker @Synthetic] declared as [[method] @Produces public org.jboss.seam.jclouds.blobstore.BlobStoreManager.getBlobStore()]]]
> This somehow needs to indicate the path the possible producers.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years
[JBoss JIRA] Created: (SOLDER-64) Look into possible portability problem with resin
by Jason Porter (JIRA)
Look into possible portability problem with resin
-------------------------------------------------
Key: SOLDER-64
URL: https://issues.jboss.org/browse/SOLDER-64
Project: Seam Solder
Issue Type: Task
Components: Compliance
Affects Versions: 3.0.0.Beta1
Environment: Mac OSX 10.6.5 Resin 4.0.13
Reporter: Jason Porter
I tried to deploy the Seam Catch JAXRS example to resin and received the following error:
┌─[jporter@Lappy] - [~/servers/resin-4.0.13] - [Sat Jan 01, 22:56:40]
└─<> bin/resin.sh console
Jan 1, 2011 10:56:44 PM com.caucho.boot.WatchdogChildTask run
INFO: WatchdogChild[] starting
Jan 1, 2011 10:56:44 PM com.caucho.boot.WatchdogChildProcess run
WARNING: Watchdog starting Resin[]
Resin-4.0.13 (built Tue, 09 Nov 2010 03:48:28 PST)
Copyright(c) 1998-2010 Caucho Technology. All rights reserved.
Using Resin(R) Open Source under the GNU Public License (GPL).
See http://www.caucho.com for information on Resin Professional,
including caching, clustering, JNI acceleration, and OpenSSL integration.
Starting Resin on Sat, 01 Jan 2011 22:56:45 -0700 (MST)
[11-01-01 22:56:46.466] {main}
[11-01-01 22:56:46.467] {main} Mac OS X 10.6.5 x86_64
[11-01-01 22:56:46.467] {main} Java(TM) SE Runtime Environment 1.6.0_22-b04-307-10M3261, MacRoman, en
[11-01-01 22:56:46.468] {main} Java HotSpot(TM) 64-Bit Server VM 17.1-b03-307, 64, mixed mode, Apple Inc.
[11-01-01 22:56:46.468] {main}
[11-01-01 22:56:46.468] {main} user.name = jporter
[11-01-01 22:56:46.517] {main}
[11-01-01 22:56:46.527] {main} server listening to localhost:6800
[11-01-01 22:56:46.539] {main}
[11-01-01 22:56:46.717] {main}
[11-01-01 22:56:46.718] {main} resin.home = /Users/jporter/servers/resin-4.0.13/
[11-01-01 22:56:46.718] {main} resin.root = /Users/jporter/servers/resin-4.0.13/
[11-01-01 22:56:46.718] {main} resin.conf = /Users/jporter/servers/resin-4.0.13/conf/resin.xml
[11-01-01 22:56:46.718] {main}
[11-01-01 22:56:46.718] {main} server = 127.0.0.1:6800 (app-tier:default)
[11-01-01 22:56:46.718] {main} stage = production
[11-01-01 22:56:47.315] {main} WebApp[production/webapp/default/ROOT] active
[11-01-01 22:56:47.737] {main} WebApp[production/webapp/default/resin-admin] active
[11-01-01 22:56:48.478] {main} WebApp[production/webapp/default/resin-doc] active
[11-01-01 22:56:48.478] {main} Host[production/host/default] active
[11-01-01 22:56:48.479] {main} Server[id=default,cluster=app-tier] active
[11-01-01 22:56:48.479] {main}
[11-01-01 22:56:48.479] {main} http listening to *:8080
[11-01-01 22:56:49.275] {main} https listening to *:8443
[11-01-01 22:56:49.276] {main}
[11-01-01 22:56:49.277] {main} Resin[id=default] started in 4200ms
[11-01-01 22:56:52.112] {resin-26} Unable to find native library 'resin_os' for com.caucho.loader.ClassEntry. Resin expects to find this library in:
(Mac OS X) /Users/jporter/servers/resin-4.0.13/libexec64/libresin_os.jnilib
On Mac OS X, run ./configure; make; make install.
The JVM exception was: java.lang.UnsatisfiedLinkError: no resin_os in java.library.path
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
java.lang.IllegalArgumentException: Invalid bundle interface org.jboss.seam.solder.messages.AnnotatedMessages (implementation not found)
at org.jboss.logging.Messages.getBundle(Messages.java:97)
at org.jboss.logging.Messages.getBundle(Messages.java:59)
at org.jboss.seam.solder.reflection.annotated.AnnotatedTypeBuilder.<init>(AnnotatedTypeBuilder.java:59)
at org.jboss.seam.config.xml.core.BeanResult.<init>(BeanResult.java:55)
at org.jboss.seam.config.xml.model.ClassXmlItem.createBeanResult(ClassXmlItem.java:130)
at org.jboss.seam.config.xml.model.AbstractValueXmlItem.getBeanResult(AbstractValueXmlItem.java:58)
at org.jboss.seam.config.xml.model.PropertyXmlItem.resolveChildren(PropertyXmlItem.java:147)
at org.jboss.seam.config.xml.model.ModelBuilder.resolveNode(ModelBuilder.java:191)
at org.jboss.seam.config.xml.model.ModelBuilder.resolveNode(ModelBuilder.java:187)
at org.jboss.seam.config.xml.model.ModelBuilder.build(ModelBuilder.java:101)
at org.jboss.seam.config.xml.bootstrap.XmlConfigExtension.beforeBeanDiscovery(XmlConfigExtension.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.caucho.config.extension.ExtensionManager$ExtensionObserver.notify(ExtensionManager.java:654)
at com.caucho.config.event.EventManager.fireLocalEvent(EventManager.java:300)
at com.caucho.config.event.EventManager.fireLocalEvent(EventManager.java:288)
at com.caucho.config.event.EventManager.fireExtensionEvent(EventManager.java:272)
at com.caucho.config.extension.ExtensionManager.fireBeforeBeanDiscovery(ExtensionManager.java:463)
at com.caucho.config.inject.InjectManager.update(InjectManager.java:2911)
at com.caucho.config.inject.InjectManager.getReferenceFactory(InjectManager.java:1323)
at com.caucho.config.el.CandiElResolver.getValue(CandiElResolver.java:125)
at com.caucho.el.StackELResolver.getValue(StackELResolver.java:143)
at com.caucho.el.IdExpr.getValue(IdExpr.java:110)
at com.caucho.el.ArrayResolverExpr.getValue(ArrayResolverExpr.java:140)
at com.caucho.el.PathExpr.getValue(PathExpr.java:142)
at com.caucho.el.Expr.evalBoolean(Expr.java:232)
at com.caucho.config.type.BooleanPrimitiveType.valueOf(BooleanPrimitiveType.java:96)
at com.caucho.config.xml.XmlConfigContext.eval(XmlConfigContext.java:1046)
at com.caucho.config.xml.XmlConfigContext.configureInlineText(XmlConfigContext.java:541)
at com.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:446)
at com.caucho.config.xml.XmlConfigContext.configureNodeAttributes(XmlConfigContext.java:405)
at com.caucho.config.xml.XmlConfigContext.configureNode(XmlConfigContext.java:360)
at com.caucho.config.xml.XmlConfigContext.configureChildBean(XmlConfigContext.java:642)
at com.caucho.config.xml.XmlConfigContext.configureBeanProperties(XmlConfigContext.java:630)
at com.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:451)
at com.caucho.config.xml.XmlConfigContext.configureAttribute(XmlConfigContext.java:320)
at com.caucho.config.program.NodeBuilderChildProgram.inject(NodeBuilderChildProgram.java:82)
at com.caucho.config.program.ContainerProgram.inject(ContainerProgram.java:86)
at com.caucho.config.program.ConfigProgram.configure(ConfigProgram.java:107)
at com.caucho.env.deploy.EnvironmentDeployController.configureInstance(EnvironmentDeployController.java:451)
at com.caucho.env.deploy.EnvironmentDeployController.configureInstance(EnvironmentDeployController.java:57)
at com.caucho.env.deploy.DeployController.startImpl(DeployController.java:612)
at com.caucho.env.deploy.StartAutoRedeployAutoStrategy.request(StartAutoRedeployAutoStrategy.java:129)
at com.caucho.env.deploy.DeployController.request(DeployController.java:531)
at com.caucho.server.webapp.WebAppVersioningController.instantiateDeployInstance(WebAppVersioningController.java:123)
at com.caucho.server.webapp.WebAppVersioningController.instantiateDeployInstance(WebAppVersioningController.java:45)
at com.caucho.env.deploy.DeployController.createDeployInstance(DeployController.java:453)
at com.caucho.env.deploy.DeployController.startImpl(DeployController.java:594)
at com.caucho.server.webapp.WebAppVersioningController.startImpl(WebAppVersioningController.java:137)
at com.caucho.server.webapp.WebAppVersioningController.startImpl(WebAppVersioningController.java:45)
at com.caucho.env.deploy.StartAutoRedeployAutoStrategy.startOnInit(StartAutoRedeployAutoStrategy.java:77)
at com.caucho.env.deploy.DeployController.startOnInit(DeployController.java:479)
at com.caucho.env.deploy.DeployContainer.update(DeployContainer.java:242)
at com.caucho.env.deploy.ExpandDeployGenerator.update(ExpandDeployGenerator.java:583)
at com.caucho.env.deploy.ExpandDeployGenerator.updateIfModified(ExpandDeployGenerator.java:529)
at com.caucho.env.deploy.ExpandDeployGenerator.alarm(ExpandDeployGenerator.java:880)
at com.caucho.env.deploy.ExpandDeployGenerator.handleAlarm(ExpandDeployGenerator.java:867)
at com.caucho.util.Alarm.handleAlarm(Alarm.java:443)
at com.caucho.util.Alarm.run(Alarm.java:415)
at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:182)
at com.caucho.env.thread.ResinThread.run(ResinThread.java:126)
[11-01-01 22:56:53.108] {resin-26} Seam REST Extension starting...
[11-01-01 22:56:53.136] {resin-26} /Users/jporter/servers/resin-4.0.13/conf/resin.xml:106: java.lang.ClassNotFoundException: javax.ws.rs.core.Response$ResponseBuilder in EnvironmentClassLoader[web-app:production/webapp/default/seam-catch-example-jaxrs,NEW]
104: - Sets max-age for cacheable pages, e.g. static pages.
105: -->
106: <resin:if test="${resin.professional}">
107: <cache-mapping url-pattern="/" max-age="5s"/>
108: <cache-mapping url-pattern="*.gif" max-age="60s"/>
java.lang.IllegalArgumentException: Invalid bundle interface org.jboss.seam.solder.messages.AnnotatedMessages (implementation not found)
at org.jboss.logging.Messages.getBundle(Messages.java:97)
at org.jboss.logging.Messages.getBundle(Messages.java:59)
at org.jboss.seam.solder.reflection.annotated.AnnotatedTypeBuilder.<init>(AnnotatedTypeBuilder.java:59)
at org.jboss.seam.config.xml.core.BeanResult.<init>(BeanResult.java:55)
at org.jboss.seam.config.xml.model.ClassXmlItem.createBeanResult(ClassXmlItem.java:130)
at org.jboss.seam.config.xml.model.AbstractValueXmlItem.getBeanResult(AbstractValueXmlItem.java:58)
at org.jboss.seam.config.xml.model.PropertyXmlItem.resolveChildren(PropertyXmlItem.java:147)
at org.jboss.seam.config.xml.model.ModelBuilder.resolveNode(ModelBuilder.java:191)
at org.jboss.seam.config.xml.model.ModelBuilder.resolveNode(ModelBuilder.java:187)
at org.jboss.seam.config.xml.model.ModelBuilder.build(ModelBuilder.java:101)
at org.jboss.seam.config.xml.bootstrap.XmlConfigExtension.beforeBeanDiscovery(XmlConfigExtension.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.caucho.config.extension.ExtensionManager$ExtensionObserver.notify(ExtensionManager.java:654)
at com.caucho.config.event.EventManager.fireLocalEvent(EventManager.java:300)
at com.caucho.config.event.EventManager.fireLocalEvent(EventManager.java:288)
at com.caucho.config.event.EventManager.fireExtensionEvent(EventManager.java:272)
at com.caucho.config.extension.ExtensionManager.fireBeforeBeanDiscovery(ExtensionManager.java:463)
at com.caucho.config.inject.InjectManager.update(InjectManager.java:2911)
at com.caucho.config.inject.InjectManager.getReferenceFactory(InjectManager.java:1323)
at com.caucho.config.el.CandiElResolver.getValue(CandiElResolver.java:125)
at com.caucho.el.StackELResolver.getValue(StackELResolver.java:143)
at com.caucho.el.IdExpr.getValue(IdExpr.java:110)
at com.caucho.el.ArrayResolverExpr.getValue(ArrayResolverExpr.java:140)
at com.caucho.el.PathExpr.getValue(PathExpr.java:142)
at com.caucho.el.Expr.evalBoolean(Expr.java:232)
at com.caucho.config.type.BooleanPrimitiveType.valueOf(BooleanPrimitiveType.java:96)
at com.caucho.config.xml.XmlConfigContext.eval(XmlConfigContext.java:1046)
at com.caucho.config.xml.XmlConfigContext.configureInlineText(XmlConfigContext.java:541)
at com.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:446)
at com.caucho.config.xml.XmlConfigContext.configureNodeAttributes(XmlConfigContext.java:405)
at com.caucho.config.xml.XmlConfigContext.configureNode(XmlConfigContext.java:360)
at com.caucho.config.xml.XmlConfigContext.configureChildBean(XmlConfigContext.java:642)
at com.caucho.config.xml.XmlConfigContext.configureBeanProperties(XmlConfigContext.java:630)
at com.caucho.config.xml.XmlConfigContext.configureChildNode(XmlConfigContext.java:451)
at com.caucho.config.xml.XmlConfigContext.configureAttribute(XmlConfigContext.java:320)
at com.caucho.config.program.NodeBuilderChildProgram.inject(NodeBuilderChildProgram.java:82)
at com.caucho.config.program.ContainerProgram.inject(ContainerProgram.java:86)
at com.caucho.config.program.ConfigProgram.configure(ConfigProgram.java:107)
at com.caucho.env.deploy.EnvironmentDeployController.configureInstance(EnvironmentDeployController.java:451)
at com.caucho.env.deploy.EnvironmentDeployController.configureInstance(EnvironmentDeployController.java:57)
at com.caucho.env.deploy.DeployController.startImpl(DeployController.java:612)
at com.caucho.server.webapp.WebAppVersioningController.startImpl(WebAppVersioningController.java:137)
at com.caucho.server.webapp.WebAppVersioningController.startImpl(WebAppVersioningController.java:45)
at com.caucho.env.deploy.StartAutoRedeployAutoStrategy.startOnInit(StartAutoRedeployAutoStrategy.java:77)
at com.caucho.env.deploy.DeployController.startOnInit(DeployController.java:479)
at com.caucho.env.deploy.DeployContainer.update(DeployContainer.java:242)
at com.caucho.env.deploy.ExpandDeployGenerator.update(ExpandDeployGenerator.java:583)
at com.caucho.env.deploy.ExpandDeployGenerator.updateIfModified(ExpandDeployGenerator.java:529)
at com.caucho.env.deploy.ExpandDeployGenerator.alarm(ExpandDeployGenerator.java:880)
at com.caucho.env.deploy.ExpandDeployGenerator.handleAlarm(ExpandDeployGenerator.java:867)
at com.caucho.util.Alarm.handleAlarm(Alarm.java:443)
at com.caucho.util.Alarm.run(Alarm.java:415)
at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:182)
at com.caucho.env.thread.ResinThread.run(ResinThread.java:126)
[11-01-01 22:56:53.248] {resin-26} Seam REST Extension starting...
[11-01-01 22:56:53.249] {resin-26} /Users/jporter/servers/resin-4.0.13/conf/resin.xml:106: java.lang.ClassNotFoundException: javax.ws.rs.core.Response$ResponseBuilder in EnvironmentClassLoader[web-app:production/webapp/default/seam-catch-example-jaxrs,NEW]
104: - Sets max-age for cacheable pages, e.g. static pages.
105: -->
106: <resin:if test="${resin.professional}">
107: <cache-mapping url-pattern="/" max-age="5s"/>
108: <cache-mapping url-pattern="*.gif" max-age="60s"/>
This may just be some missing jars, but whatever it is we need to find out and make sure it's nothing to do with Solder or any of the Seam 3 modules.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years