[JBoss Seam] - Natural conversation for wildcard view-id
by jacob.orshalick
Is there any interest in being able to specify a natural conversation for a wildcard view-id? When a natural conversation spans a number of pages you currently have to explicitly state the named conversation for each view-id. It would be nice to simply specify the natural conversation for a wildcard view-id.
For example, if my conversation spans the following:
<conversation name="Checkout"
| parameter-name="cart"
| parameter-value="#{cart.cartId}"/>
|
| <page view-id="/checkout/checkout1.jsp" conversation="Checkout" />
| <page view-id="/checkout/checkout2.jsp" conversation="Checkout" />
| <page view-id="/checkout/checkout3.jsp" conversation="Checkout" />
| <page view-id="/checkout/confirm.jsp" conversation="Checkout" />
Instead I would prefer to use:
<page view-id="/checkout/*" conversation="Checkout" />
This is also especially useful for free navigation situations within the conversation that do not have navigation rules (i.e. the conversation spans many pages but can access any page at any time) to avoid specifying each view-id in pages.xml.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4127925#4127925
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4127925
18 years, 2 months
[Clustering/JBoss] - Re: StateTransferTimeout appears to be ignored
by bstansberry@jboss.com
Here's the code that's being executed during the logging gap:
| log.debug("setState called");
| if (obj == null)
| {
| log.debug("state is null");
| return;
| }
|
| long used_mem_before, used_mem_after;
| int state_size=obj != null? obj.length : 0;
| Runtime rt=Runtime.getRuntime();
| used_mem_before=rt.totalMemory() - rt.freeMemory();
|
| HashMap state = (HashMap)objectFromByteBuffer(obj);
| java.util.Iterator keys = state.keySet().iterator();
| while (keys.hasNext())
| {
| String key = (String)keys.next();
| log.debug("setState for " + key);
|
Here's the objectFromByteBuffer() code:
| public static Object objectFromByteBuffer (byte[] buffer) throws Exception
| {
| if(buffer == null)
| return null;
|
| ByteArrayInputStream bais = new ByteArrayInputStream(buffer);
| MarshalledValueInputStream mvis = new MarshalledValueInputStream(bais);
| return mvis.readObject();
| }
|
This is all in the org.jboss.ha.framework.server.HAPartitionImpl class, found in the cluster module of the AS source.
It's possible there is some issue with the MarshalledValueInputStream.readObject() call although I doubt it. In this case it's basically just an ordinary java.io.ObjectInputStream.readObject() call. And as you can see from the final log message, the byte[] it's deserializing is only 1466 bytes; hardly anything. If that were having issues I expect I'd hear more about it from others.
Perhaps something the memory calculation business? That at least is somewhat environment-specific. Just a wild guess.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4127924#4127924
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4127924
18 years, 2 months
[Microcontainer] - Questions on describe/classloader deployers and CL scope
by gcompienne
I have a few questions the concerning the DESCRIBE and CLASSLOADER deployer stages.
I understand the principle that DESCRIBE is used to declare/define the dependencies whilst the CLASSLOADER stage is related to the classloader itself.
I have noticed that the classloader instance (BaseClassLoader) is created in-between the DESCRIBE and CLASSLOADER stages. That's seems reasonable as after the DESCRIBE stage I suspect the system should have enough information to create the appriopriate classloader. But then I wonder what is really the purpose of the CLASSLOADER stage? Is it to have a deployer that will create the classloader itself? If so, how do I make that happen (as I said the CL is currently automatically created between the describe and classloader stages).
I also have another question concerning classloaders. Looking at the MC code it looks like the classloader is only created for a top level deployment unit. Why is that the case? (it would mean the WAR, JAR and other would use the CL of the EAR). Does it has to be always the case? Or am I missing something?
Thanks.
Gilles.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4127922#4127922
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4127922
18 years, 2 months
[JBoss jBPM] - Re: Problem with nodes with async=
by osganian
Thanks for you reply. I'm alittle further now. The user guide is wrong. The class that runs the async nodes is called JobExecutor and you have to call the startJobExecutor method on the JBPM configuration to start it up. The problem I have now is that my Job gets persisted and its associated Token but in the Token table the ProcessInstance_ is set to NULL even though its non-null on the Token before its saved. So when the JobExecutor loads and run the Job I get this NullPointerException:
| 12:12:18,140 [JbpmJobExector:192.168.100.109:1] DEBUG JobExecutorThread : exception while executing 'job[2]'
| org.jbpm.graph.def.DelegationException
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:387)
| 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:585)
| at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
| at org.jbpm.graph.def.ProcessDefinition$$EnhancerByCGLIB$$d720fdf7.raiseException(<generated>)
| at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:378)
| at org.jbpm.graph.def.Node.execute(Node.java:344)
| 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:585)
| at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
| at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$74685187.execute(<generated>)
| at org.jbpm.job.ExecuteNodeJob.execute(ExecuteNodeJob.java:27)
| 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:585)
| at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
| at org.jbpm.job.Job$$EnhancerByCGLIB$$8e5776a.execute(<generated>)
| at org.jbpm.job.executor.JobExecutorThread.executeJob(JobExecutorThread.java:164)
| at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:64)
| Caused by: java.lang.NullPointerException
| at org.jbpm.graph.exe.Token.startCompositeLog(Token.java:377)
| 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:585)
| at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
| at org.jbpm.graph.exe.Token$$EnhancerByCGLIB$$20f6f81b.startCompositeLog(<generated>)
| at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:240)
| at org.jbpm.graph.def.Node.execute(Node.java:339)
| ... 16 more
|
How do I fix this?
Thanks
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4127919#4127919
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4127919
18 years, 2 months
[Clustering/JBoss] - Re: StateTransferTimeout appears to be ignored
by dcolwell
The following is my log4j trace of org.jboss.ha category. Unfortunately it does not appear to contain useful information during the 3+ minute pause after the line "Fetching State". Is there other information in this log that could give a clue or would you have other thoughts on how I should investigate?
Thank you,
Dave
2008-02-08 11:04:59,787 [main] DEBUG [ClusterPartition] Setting JGProps from xml to: UDP(discard_incompatible_packets=true;down_thread=false;enable_bundling=false;ip_ttl=2;loopback=false;max_
bundle_size=64000;max_bundle_timeout=30;mcast_addr=231.1.2.2;mcast_port=47102;mcast_recv_buf_size=25000000;mcast_send_buf_size=640000;tos=8;ucast_recv_buf_size=20000000;ucast_send_buf_size=64
0000;up_thread=false;use_incoming_packet_handler=true;use_outgoing_packet_handler=false):PING(down_thread=false;num_initial_members=3;timeout=2000;up_thread=false):MERGE2(down_thread=false;ma
x_interval=100000;min_interval=20000;up_thread=false):FD_SOCK(down_thread=false;up_thread=false):FD(down_thread=false;max_tries=5;shun=true;timeout=10000;up_thread=false):VERIFY_SUSPECT(down_
thread=false;timeout=1500;up_thread=false):pbcast.NAKACK(discard_delivered_msgs=true;down_thread=false;gc_lag=0;max_xmit_size=60000;retransmit_timeout=300,600,1200,2400,4800;up_thread=false;u
se_mcast_xmit=false):UNICAST(down_thread=false;timeout=300,600,1200,2400,3600;up_thread=false):pbcast.STABLE(desired_avg_gossip=50000;down_thread=false;max_bytes=400000;stability_delay=1000;u
p_thread=false):pbcast.GMS(down_thread=false;join_retry_timeout=2000;join_timeout=3000;print_local_addr=true;shun=true;up_thread=false;view_bundling=true):FRAG2(down_thread=false;frag_size=60
000;up_thread=false):pbcast.STATE_TRANSFER(down_thread=false;up_thread=false;use_flush=false)
2008-02-08 11:05:00,014 [main] DEBUG [ClusterPartition] Creating jboss:service=MSPTEST_emtrack
2008-02-08 11:05:00,014 [main] DEBUG [ClusterPartition] Creating JGroups JChannel
2008-02-08 11:05:00,279 [main] DEBUG [ClusterPartition] Creating HAPartition
2008-02-08 11:05:00,308 [main] DEBUG [ClusterPartition] Initing HAPartition: org.jboss.ha.framework.server.HAPartitionImpl@18837f1
2008-02-08 11:05:00,308 [main] INFO [MSPTEST_emtrack] Initializing
2008-02-08 11:05:00,309 [main] DEBUG [MSPTEST_emtrack] setMembershipListener
2008-02-08 11:05:00,309 [main] DEBUG [MSPTEST_emtrack] setMessageListener
2008-02-08 11:05:00,309 [main] DEBUG [MSPTEST_emtrack] create replicant manager
2008-02-08 11:05:00,337 [main] DEBUG [MSPTEST_emtrack] init replicant manager
2008-02-08 11:05:00,337 [main] DEBUG [MSPTEST_emtrack] registerRPCHandler
2008-02-08 11:05:00,337 [main] DEBUG [MSPTEST_emtrack] subscribeToStateTransferEvents
2008-02-08 11:05:00,337 [main] DEBUG [MSPTEST_emtrack] registerMembershipListener
2008-02-08 11:05:00,342 [main] DEBUG [MSPTEST_emtrack] bind replicant manager
2008-02-08 11:05:00,342 [main] DEBUG [MSPTEST_emtrack] create distributed state
2008-02-08 11:05:00,354 [main] DEBUG [MSPTEST_emtrack] init distributed state service
2008-02-08 11:05:00,359 [main] DEBUG [MSPTEST_emtrack] bind distributed state service
2008-02-08 11:05:00,366 [main] DEBUG [MSPTEST_emtrack] done initing.
2008-02-08 11:05:00,366 [main] DEBUG [ClusterPartition] HAPartition initialized
2008-02-08 11:05:00,366 [main] DEBUG [ClusterPartition] Created jboss:service=MSPTEST_emtrack
2008-02-08 11:05:00,367 [main] DEBUG [HASessionStateService] Creating jboss:service=HASessionState
2008-02-08 11:05:00,385 [main] DEBUG [HASessionStateService] Created jboss:service=HASessionState
2008-02-08 11:05:00,386 [main] DEBUG [HANamingService] Creating jboss:service=HAJNDI
2008-02-08 11:05:00,386 [main] DEBUG [HANamingService] Initializing HAJNDI server on partition: MSPTEST_emtrack
2008-02-08 11:05:00,397 [main] DEBUG [HANamingService] initialize HAJNDI
2008-02-08 11:05:00,397 [main] DEBUG [HAJNDI] subscribeToStateTransferEvents
2008-02-08 11:05:00,397 [main] DEBUG [TreeHead] registerRPCHandler
2008-02-08 11:05:00,398 [main] DEBUG [HANamingService] Created jboss:service=HAJNDI
2008-02-08 11:05:00,401 [main] DEBUG [ClusterPartition] Starting jboss:service=MSPTEST_emtrack
2008-02-08 11:05:00,404 [main] DEBUG [ClusterPartition] Starting ClusterPartition: MSPTEST_emtrack
2008-02-08 11:05:02,490 [main] DEBUG [MSPTEST_emtrack] ViewAccepted: initial members set
2008-02-08 11:05:02,494 [main] DEBUG [ClusterPartition] Starting channel
2008-02-08 11:05:02,495 [main] DEBUG [MSPTEST_emtrack] get nodeName
2008-02-08 11:05:02,495 [main] DEBUG [MSPTEST_emtrack] Get current members
2008-02-08 11:05:02,496 [main] INFO [MSPTEST_emtrack] Number of cluster members: 2
2008-02-08 11:05:02,496 [main] INFO [MSPTEST_emtrack] Other members: 1
2008-02-08 11:05:02,496 [main] INFO [MSPTEST_emtrack] Fetching state (will wait for 30000 milliseconds):
2008-02-08 11:05:02,502 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [MSPTEST_emtrack] setState called
2008-02-08 11:08:11,545 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [MSPTEST_emtrack] setState for DistributedReplicantManager
2008-02-08 11:08:11,549 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [MSPTEST_emtrack] setState for HASessionStateTransfer
2008-02-08 11:08:11,549 [DRM Async Publisher#0] DEBUG [MSPTEST_emtrack] DRM: Sleeping before re-publishing for 50ms just in case
2008-02-08 11:08:11,550 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [/HASessionState/Default] Receiving state of HASessionState
2008-02-08 11:08:11,551 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [MSPTEST_emtrack] setState for HAJNDI
2008-02-08 11:08:11,551 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [TreeHead] registerRPCHandler
2008-02-08 11:08:11,551 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [MSPTEST_emtrack] setState for DistributedState
2008-02-08 11:08:11,552 [IncomingPacketHandler (channel=MSPTEST_emtrack)] DEBUG [MSPTEST_emtrack] received a state of 1466 bytes; expanded memory by 4915968 bytes (used memory before: 40976664, used memory after: 45892632)
2008-02-08 11:08:11,552 [main] INFO [MSPTEST_emtrack] state was retrieved successfully (in 189056 milliseconds)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4127918#4127918
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4127918
18 years, 2 months
[JBoss Seam] - Re: Anybody got Seam 2.0.0 working with WebSphere 6.1 and EJ
by jbalunas@redhat.com
This morning I ran a clean install of websphere + ejb3fp, seam 2.0.1.GA to double check my instructions. The exact steps I followed are below.
Note that I am seeing the "Found unrecognized persistence provider "org.hibernate.ejb.HibernatePersistence" in place of OpenJPA provider. This provider's properties will not be used." warning in the system err log when this *is* working. This caused no issues for running the application. From my research with websphere there is some confusion on what this means. Some believe that this is just a warning and when the app runs it is using hibernate as it should - based on when class loaders are started and used. Others believe that it is really using openJPA and ignoring hibernate. From what I read this message can be avoided by creating a websphere "shared library" that has all the hibernate requirements and then associate it with the application (removing the same jars from the war).
Because I just completed these instructions for the reference docs I wanted to spend some extra time since you were having issues with them.
Let me know if you are still having problems. You might also want to try removing any other test applications that installed that may be using the same datasource, or tables - maybe they are causing conflicts. As I said the docs and steps below (same ones) are with a clean install.
I hope this helps,
Jay
*Steps I followed on my linux machine*
* Clean install of Websphere 6.1.09 and ejb feature pack + 6.1.0.13 patch (included with ejb3fp)
no sample apps
admin login set
* Augmented the default profile with the ejb3 fp features
* Clean install of Seam 2.0.1ga
* Went to admin console
set custom properties
*restarted
had to restart again because ports did not free up
* built JPA example ant websphere61
* Deployed following doc
Changed web module class loader first
Then the application's - it took it first time - without file modification
* restart
* Went to http://localhost:9082/jboss-seam-jpa/index.html and everything worked :)
* Got following in error log see notes above:
[2/8/08 11:06:53:610 EST] 00000015 SystemErr R WARNING: Found unrecognized persistence provider "org.hibernate.ejb.HibernatePersistence" in place of OpenJPA provider. This provider's properties will not be used.
* Went to admin console stopped and started app got exceptions
* restarted
*Went to admin console and looked around
*Went back to http://localhost:9082/jboss-seam-jpa/index.html and everything worked.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4127915#4127915
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4127915
18 years, 2 months