Reorder links in DataTable

2008-08-19 Thread Artem D.

Hi,

is there a way to implement reordering of rows in DatTable?
I'd like to add a column with moveUp,moveDown,remove having the same
behaviour as corresponging links of the ListView component.
I suppose DataTable should be set to model reusing with
setItemReuseStrategy(ReuseIfModelsEqualStrategy.getInstance()) and
DataProvider should be a simple wrapper around List object but could not
find a more or less generic way to implement ListView reordering behavior.




-- 
View this message in context: 
http://www.nabble.com/Reorder-links-in-DataTable-tp19062831p19062831.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Tomcat 6 clustering problem

2008-06-25 Thread Artem D.

Hi all,
I've got wicket 1.4-m2 based application running on two different network
hosts configured as Tomcat 6 Simple TCP cluster.
I try to simulate failover with session replication using the following
schema:
1) Log into the first server, store some info in HTTP session
2) Access mounted page on the first server, i.e.
http://first.server/mounted/page
3) Try to access the same page on the second server, i.e.
http://second.server/mounted/page

I assume that HTTP session should replicate between Tomcat's and I want to
get immediate reply from the second server, but all I get is forwarding me
to the login screen and the following entries in log:

Jun 25, 2008 5:10:39 PM org.apache.catalina.ha.session.DeltaManager
messageReceived
SEVERE: Manager [localhost#/mas]: Unable to receive message through TCP
channel
java.lang.IllegalArgumentException: Unknown object type null
at
org.apache.wicket.protocol.http.pagestore.DiskPageStore.restoreAfterSerialization(DiskPageStore.java:1211)
at
org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.readObject(SecondLevelCacheSessionStore.java:403)
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
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
at
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
at
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at
org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:361)
at
org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:255)
at
org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:619)
at
org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1363)
at
org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1320)
at
org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1083)
at
org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:87)
at
org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:899)
at
org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:880)
at
org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:269)
at
org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:79)
at
org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:110)
at
org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:79)
at
org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:79)
at
org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:241)
at
org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:225)
at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:188)
at
org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:91)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)

Is there a way to resolve this issue?
-- 
View this message in context: 
http://www.nabble.com/Tomcat-6-clustering-problem-tp18112263p18112263.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Tomcat 6 clustering problem

2008-06-25 Thread Artem D.

Just tried with 1.4-SNAPSHOT.
Same exception but different line in the DiskPageStore.java
SEVERE: Manager [localhost#/mas]: Unable to receive message through TCP
channel
java.lang.IllegalArgumentException: Unknown object type null
at
org.apache.wicket.protocol.http.pagestore.DiskPageStore.restoreAfterSerialization(DiskPageStore.java:1215)



Matej Knopp-2 wrote:
 
 Any chance you can try it with latest trunk?
 
 -Matej
 
 On Wed, Jun 25, 2008 at 3:18 PM, Artem D. [EMAIL PROTECTED] wrote:

 Hi all,
 I've got wicket 1.4-m2 based application running on two different network
 hosts configured as Tomcat 6 Simple TCP cluster.
 I try to simulate failover with session replication using the following
 schema:
 1) Log into the first server, store some info in HTTP session
 2) Access mounted page on the first server, i.e.
 http://first.server/mounted/page
 3) Try to access the same page on the second server, i.e.
 http://second.server/mounted/page

 I assume that HTTP session should replicate between Tomcat's and I want
 to
 get immediate reply from the second server, but all I get is forwarding
 me
 to the login screen and the following entries in log:

 Jun 25, 2008 5:10:39 PM org.apache.catalina.ha.session.DeltaManager
 messageReceived
 SEVERE: Manager [localhost#/mas]: Unable to receive message through TCP
 channel
 java.lang.IllegalArgumentException: Unknown object type null
at
 org.apache.wicket.protocol.http.pagestore.DiskPageStore.restoreAfterSerialization(DiskPageStore.java:1211)
at
 org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevelCachePageMap.readObject(SecondLevelCacheSessionStore.java:403)
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
 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at
 java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at
 java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at
 org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:361)
at
 org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:255)
at
 org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:619)
at
 org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1363)
at
 org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1320)
at
 org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1083)
at
 org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:87)
at
 org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:899)
at
 org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:880)
at
 org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:269)
at
 org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:79)
at
 org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:110)
at
 org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:79)
at
 org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:79)
at
 org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:241)
at
 org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:225)
at
 org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:188)
at
 org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.java:91)
at
 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)

 Is there a way to resolve this issue?
 --
 View this message in context:
 http://www.nabble.com/Tomcat-6-clustering-problem-tp18112263p18112263.html
 Sent from the Wicket - User mailing list archive at Nabble.com.


 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED

RE: Tomcat 6 clustering problem

2008-06-25 Thread Artem D.

Just tested you suggestion - it works like a charm!
Thanks for your help!

Artem.


lzappaterrini wrote:
 
 Well in a production situation there would be one host name used and
 failover would just change which server the requests to that host name
 get routed to. In that scenario the same cookies would be used so no
 problem.
 
 You should be able to use some trickery in your hosts file to mimic
 this. Add a host name (clustertest perhaps)  that points to the first
 server's IP address, access the site, switch the IP address in the hosts
 file to the second server, verify that the second server is indeed hit
 and that the behavior is correct.
 
 I'm not sure if you are familiar with working with a hosts file so just
 know that on all Unix-like systems I have encountered it is found at
 /etc/hosts and on all Windows systems I have encountered it is found at
 C:\WINDOWS\system32\drivers\etc\hosts
 
 Larry
 
 -Original Message-
 From: Artem D. [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, June 25, 2008 10:05 AM
 To: users@wicket.apache.org
 Subject: RE: Tomcat 6 clustering problem
 
 
 Disabling cookies in browser made it work!
 Servers are configured with jvmRoutes jvm1 and jvm2, i.e. for the first
 server:
 
 Engine name=Catalina defaultHost=localhost jvmRoute=jvm1
 
 jsessionid request parameter while requesting the first server looks
 like
 jsessionid=3E526DD2214AEA5B5C2DAB9C6713AF26.jvm1
 
 When switching to the second server jvm2 suffix is used.
 
 What's the correct way to make it work with enabled cookies?
 
 -Artem.
 
 
 lzappaterrini wrote:
 
 Are you sure that the same JSESSIONID cookie is being sent to both
 servers? Cookies only get sent when the host value matches the host in
 the URL. Might that be your issue?  
 
 -Original Message-
 From: Artem D. [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, June 25, 2008 9:18 AM
 To: users@wicket.apache.org
 Subject: Tomcat 6 clustering problem
 
 
 Hi all,
 I've got wicket 1.4-m2 based application running on two different
 network
 hosts configured as Tomcat 6 Simple TCP cluster.
 I try to simulate failover with session replication using the
 following
 schema:
 1) Log into the first server, store some info in HTTP session
 2) Access mounted page on the first server, i.e.
 http://first.server/mounted/page
 3) Try to access the same page on the second server, i.e.
 http://second.server/mounted/page
 
 I assume that HTTP session should replicate between Tomcat's and I
 want
 to
 get immediate reply from the second server, but all I get is
 forwarding
 me
 to the login screen and the following entries in log:
 
 Jun 25, 2008 5:10:39 PM org.apache.catalina.ha.session.DeltaManager
 messageReceived
 SEVERE: Manager [localhost#/mas]: Unable to receive message through
 TCP
 channel
 java.lang.IllegalArgumentException: Unknown object type null
 at

 org.apache.wicket.protocol.http.pagestore.DiskPageStore.restoreAfterSeri
 alization(DiskPageStore.java:1211)
 at

 org.apache.wicket.protocol.http.SecondLevelCacheSessionStore$SecondLevel
 CachePageMap.readObject(SecondLevelCacheSessionStore.java:403)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at

 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
 a:39)
 at

 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
 Impl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:597)
 at
 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
 at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
 at

 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753
 )
 at
 java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
 at
 java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
 at

 org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(D
 eltaRequest.java:361)
 at

 org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.ja
 va:255)
 at

 org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(Delt
 aManager.java:619)
 at

 org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaMan
 ager.java:1363)
 at

 org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager
 .java:1320)
 at

 org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaMan
 ager.java:1083)
 at

 org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(Cl
 usterSessionListener.java:87)
 at

 org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpClu
 ster.java:899)
 at

 org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpClu
 ster.java:880)
 at

 org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChann
 el.java:269