[Design the new POJO MicroContainer] - Re: Moving parsing to JBossXB.Builder/JAXB
by kabir.khan@jboss.com
Good point Ales!
Alex, I cannot commit the switch, but basically in SingletonSchemaResolverFactory I want to
| @@ -56,13 +56,13 @@
| */
| private SingletonSchemaResolverFactory()
| {
| - // old initializer
| - addSchema("urn:jboss:aop-beans:1.0", "org.jboss.aop.microcontainer.beans.xml.AOPBeansSchemaInitializer", Boolean.FALSE);
| + // old initializer
| + //addSchema("urn:jboss:aop-beans:1.0", "org.jboss.aop.microcontainer.beans.xml.AOPBeansSchemaInitializer", Boolean.FALSE);
| addSchema("urn:jboss:spring-beans:2.0", "org.jboss.spring.deployment.xml.SpringSchemaInitializer", Boolean.FALSE);
| addSchema("urn:jboss:osgi-beans:1.0", "org.jboss.osgi.deployment.xml.OSGiSchemaInitializer", Boolean.FALSE);
| addSchema("urn:jboss:seam-components:1.0", "org.jboss.seam.ioc.microcontainer.xml.SeamSchemaInitializer", Boolean.FALSE);
| // new jaxb
| - //addJaxbSchema("urn:jboss:aop-beans:1.0", "org.jboss.aop.microcontainer.beans.metadata.AOPDeployment");
| + addJaxbSchema("urn:jboss:aop-beans:1.0", "org.jboss.aop.microcontainer.beans.metadata.AOPDeployment");
| addJaxbSchema("urn:jboss:bean-deployer", "org.jboss.kernel.plugins.deployment.AbstractKernelDeployment10");
| addJaxbSchema("urn:jboss:bean-deployer:2.0", "org.jboss.kernel.plugins.deployment.AbstractKernelDeployment");
|
http://jira.jboss.com/jira/browse/JBXB-136
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4139219#4139219
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4139219
16 years, 3 months
[Design the new POJO MicroContainer] - Re: beanfactory extensions
by alesj
"adrian(a)jboss.org" wrote :
| Raise a JIRA issue to turn this into a proper spi, but don't do it now,
| I don't want any more moving targets over the next couple of days. :-)
What should we consider a proper spi here?
I've added this abstract class, which holds all the "callbacks" that are required from GenericBeanFactoryMetaData.
| package org.jboss.beans.metadata.spi.factory;
|
| import java.util.Map;
| import java.util.List;
|
| import org.jboss.beans.info.spi.BeanAccessMode;
| import org.jboss.beans.info.spi.BeanInfo;
| import org.jboss.beans.metadata.spi.ClassLoaderMetaData;
| import org.jboss.beans.metadata.spi.ConstructorMetaData;
| import org.jboss.beans.metadata.spi.LifecycleMetaData;
| import org.jboss.beans.metadata.spi.ValueMetaData;
| import org.jboss.beans.metadata.spi.ParameterMetaData;
| import org.jboss.kernel.spi.config.KernelConfigurator;
| import org.jboss.joinpoint.spi.MethodJoinpoint;
| import org.jboss.joinpoint.spi.JoinpointException;
|
| /**
| * SPI contract of bean factory we can create from GenericBeanFactoryMetaData.
| *
| * @author <a href="mailto:ales.justin@jboss.com">Ales Justin</a>
| */
| public abstract class AbstractBeanFactory implements BeanFactory
| {
| /** The configurator */
| protected KernelConfigurator configurator;
|
| /** The bean class name */
| protected String bean;
|
| /** The access mode */
| protected BeanAccessMode accessMode;
|
| /** The classloader */
| protected ClassLoaderMetaData classLoader;
|
| /** The constructor metadata */
| protected ConstructorMetaData constructor;
|
| /** The properties Map<propertyName, ValueMetaData> */
| protected Map<String, ValueMetaData> properties;
|
| /** The create lifecycle method */
| protected LifecycleMetaData create;
|
| /** The start lifecycle method */
| protected LifecycleMetaData start;
|
| protected AbstractBeanFactory(KernelConfigurator configurator)
| {
| if (configurator == null)
| throw new IllegalArgumentException("Null configurator");
| this.configurator = configurator;
| }
|
| /**
| * Get the configurator.
| *
| * @return the configurator
| */
| protected KernelConfigurator getConfigurator()
| {
| return configurator;
| }
|
| /**
| * Get the bean name
| *
| * @return the bean
| */
| public String getBean()
| {
| return bean;
| }
|
| /**
| * Set the bean name
| *
| * @param bean the bean name
| */
| public void setBean(String bean)
| {
| this.bean = bean;
| }
|
| /**
| * Get the access mode.
| *
| * @return the access mode
| */
| public BeanAccessMode getAccessMode()
| {
| return accessMode;
| }
|
| /**
| * Set the access mode.
| *
| * @param accessMode the access mode.
| */
| public void setAccessMode(BeanAccessMode accessMode)
| {
| this.accessMode = accessMode;
| }
|
| /**
| * Get the classLoader.
| *
| * @return the classLoader.
| */
| public ClassLoaderMetaData getClassLoader()
| {
| return classLoader;
| }
|
| /**
| * Set the classLoader.
| *
| * @param classLoader the classLoader.
| */
| public void setClassLoader(ClassLoaderMetaData classLoader)
| {
| this.classLoader = classLoader;
| }
|
| /**
| * Get the constructor metadata
| *
| * @return the contructor metadata
| */
| public ConstructorMetaData getConstructor()
| {
| return constructor;
| }
|
| /**
| * Set the constructor metadata
| *
| * @param constructor the constructor metadata
| */
| public void setConstructor(ConstructorMetaData constructor)
| {
| this.constructor = constructor;
| }
|
| /**
| * Get the properties
| *
| * @return the properties Map<propertyName, ValueMetaData>
| */
| public Map<String, ValueMetaData> getProperties()
| {
| return properties;
| }
|
| /**
| * Set the properties
| *
| * @param properties the properties Map<propertyName, ValueMetaData>
| */
| public void setProperties(Map<String, ValueMetaData> properties)
| {
| this.properties = properties;
| }
|
| /**
| * Get the create.
| *
| * @return the create.
| */
| public LifecycleMetaData getCreate()
| {
| return create;
| }
|
| /**
| * Set the create.
| *
| * @param create the create.
| */
| public void setCreate(LifecycleMetaData create)
| {
| this.create = create;
| }
|
| /**
| * Get the start.
| *
| * @return the start.
| */
| public LifecycleMetaData getStart()
| {
| return start;
| }
|
| /**
| * Set the start.
| *
| * @param start the start.
| */
| public void setStart(LifecycleMetaData start)
| {
| this.start = start;
| }
|
| /**
| * Invoke a lifecycle method
| *
| * @param methodName the default method name
| * @param lifecycle the lifecycle
| * @param info the bean info
| * @param cl the classloader
| * @param target the target
| * @throws Throwable for any error
| */
| protected void invokeLifecycle(String methodName, LifecycleMetaData lifecycle, BeanInfo info, ClassLoader cl, Object target) throws Throwable
| {
| if (lifecycle == null || lifecycle.isIgnored() == false)
| {
| String method = methodName;
| if (lifecycle != null && lifecycle.getMethodName() != null)
| method = lifecycle.getMethodName();
| List<ParameterMetaData> parameters = null;
| if (lifecycle != null)
| parameters = lifecycle.getParameters();
| MethodJoinpoint joinpoint;
| try
| {
| joinpoint = configurator.getMethodJoinPoint(info, cl, method, parameters, false, true);
| }
| catch (JoinpointException ignored)
| {
| return;
| }
| joinpoint.setTarget(target);
| joinpoint.dispatch();
| }
| }
| }
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4139196#4139196
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4139196
16 years, 3 months
[Design of JBoss jBPM] - Re: New jBPM Console
by fady.matar
There's no point in currently using EJB 3 for the following reasons:
1. Entities are managed through the jBPM libraries, the console by itself has no external entities, and since JBPM uses hibernate for persistence then we're using automatically Hibernate
2. We would like to make the console portable as much as possible and since EJB 3 support in a number of application servers is not yet implemented we resorted to use plain actions / pojos instead of SLSB.
3. The integration of the console with the portal is definitely a plus, however that is delayed with other features until the first release is out. The benefits gained out there are the delegation of authentication through the security of the portal.
If we were to limit ourselves to JBoss AS then I would definitely go for EJB 3.0 however we don't want to miss the opportunity of running the console on other application servers / servlet containers.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4139178#4139178
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4139178
16 years, 3 months