It seems that the problem is not isolated to only JBoss. I have
deployed the application to Tomcat 5.5 and the same message appears.
Rather than being caused by a connection failure this time it is
caused by a ClassCastException.
See the trace below,
[Flex] Exception when invoking service: data-service
with message: Flex Message (flex.data.messages.DataMessage)
operation = transacted
id = null
clientId = 627EFDAF-E0B2-D265-7E87-814FBF618297
correlationId =
destination = userDest
messageId = 5D5B6555-6771-5A6C-7783-EFAE0DB097BE
timestamp = 1159367364062
timeToLive = 0
body =
[
Flex Message (flex.data.messages.DataMessage)
operation = update
id = ASObject(20457766){id=12}
clientId = 9D2C55D8-A16D-DF68-6281-EFADFD836225
correlationId = 5D5B6555-6771-5A6C-7783-EFAE0DB097BE
destination = userDest
messageId = B941BD2C-2AEA-5B39-6759-EFAE0DA0A91A
timestamp = 0
timeToLive = 0
body =
[
[
username
],
{password=12vianet, userType=1, username=root,
ownerName=System, id=12},
{password=12vianet, userType=1, username=roo,
ownerName=System, id=12}
]
]
hdr(DSEndpoint) = my-polling-amf
exception: flex.data.DataServiceException: Unable to access
UserTransaction in DataService.
[Flex] Error handling message: flex.data.DataServiceException: Unable
to access UserTransaction in DataService.
incomingMessage: Flex Message (flex.data.messages.DataMessage)
operation = transacted
id = null
clientId = 627EFDAF-E0B2-D265-7E87-814FBF618297
correlationId =
destination = userDest
messageId = 5D5B6555-6771-5A6C-7783-EFAE0DB097BE
timestamp = 1159367364062
timeToLive = 0
body =
[
Flex Message (flex.data.messages.DataMessage)
operation = update
id = ASObject(20457766){id=12}
clientId = 9D2C55D8-A16D-DF68-6281-EFADFD836225
correlationId = 5D5B6555-6771-5A6C-7783-EFAE0DB097BE
destination = userDest
messageId = B941BD2C-2AEA-5B39-6759-EFAE0DA0A91A
timestamp = 0
timeToLive = 0
body =
[
[
username
],
{password=12vianet, userType=1, username=root,
ownerName=System, id=12},
{password=12vianet, userType=1, username=roo,
ownerName=System, id=12}
]
]
hdr(DSEndpoint) = my-polling-amf
errorReply: Flex Message (flex.messaging.messages.ErrorMessage)
clientId = null
correlationId = 5D5B6555-6771-5A6C-7783-EFAE0DB097BE
destination = userDest
messageId = 627F04DB-D0EA-6F83-F899-17780D7F89EE
timestamp = 1159367364109
timeToLive = 0
body = null
code = Server.Processing
message = Unable to access UserTransaction in DataService.
details = null
rootCause = java.lang.ClassCastException: org.objectweb.jotm.Current
body = null
extendedData = null
[Flex] Serializing AMF/HTTP response
Version: 3
(Message #0 targetURI=/8/onStatus, responseURI=)
(Typed Object #0 'flex.messaging.messages.ErrorMessage')
rootCause = (Typed Object #1 'java.lang.ClassCastException')
localizedMessage = "org.objectweb.jotm.Current"
message = "org.objectweb.jotm.Current"
cause = null
destination = "userDest"
headers = (Object #2)
correlationId = "5D5B6555-6771-5A6C-7783-EFAE0DB097BE"
faultString = "Unable to access UserTransaction in DataService."
messageId = "627F04DB-D0EA-6F83-F899-17780D7F89EE"
faultCode = "Server.Processing"
timeToLive = 0.0
extendedData = null
faultDetail = null
clientId = null
timestamp = 1.159367364109E12
body = null
I am attempting to use the Assemblers to fill and update data is there
anything special I am missing?
--- In [email protected], "erik_jen5en" <[EMAIL PROTECTED]> wrote:
>
> Hi Jeff,
>
> I don't seem to be able to get access to your JSP file although I do
> have another application deployed on the application server that uses
> the UserTransaction during a JAAS login.
>
> Since the other application is working I was hoping that it was simply
> a setup error.
>
>
> --- In [email protected], "Jeff Vroom" <jvroom@> wrote:
> >
> > This is very strange. I wish the code were logging a stack trace for
> > this error (and just fixed the code so it will in the future) but I do
> > see some additional information:
> >
> >
> >
> > message = Unable to access UserTransaction in DataService.
> > details = null
> > rootCause = javax.naming.NamingException: Could not dereference
> > object [Root exception is javax.naming.CommunicationException: Receive
> > timed out [Root exception is java.net.SocketTimeoutException: Receive
> > timed out]]
> > body = null
> >
> >
> >
> > I don't understand why a JNDI lookup for the UserTransaction object
> > would go and try to talk to a socket though maybe there is some funky
> > JNDI factory that is intercepting that call and trying to find some
> > remote service?
> >
> >
> >
> > It also could be the "begin" call that is failing. I was also
thinking
> > that if your transaction manager is configured to use some distributed
> > transaction service that might be trying to contact something which is
> > failing?
> >
> >
> >
> > Just to be sure this stuff works outside of the context of FDS, I've
> > attached a simple jsp file. Could you drop this into your FDS web app
> > and be sure it works?
> >
> >
> >
> > Jeff
> >
> >
> >
> > ________________________________
> >
> > From: [email protected]
[mailto:[EMAIL PROTECTED] On
> > Behalf Of erik_jen5en
> > Sent: Monday, September 25, 2006 5:54 AM
> > To: [email protected]
> > Subject: [flexcoders] Re: Unable to access UserTransaction in
> > DataService.
> >
> >
> >
> > I have enabled the server debugging. Although I do not see a java
> > stack trace I do get a lot of Flex messages. The complete output is,
> >
> > 2006-09-25 13:41:57,695 INFO [STDOUT] [Flex] After invoke service:
> > data-service
> > reply: Flex Message (flex.data.messages.SequencedMessage)
> > sequenceId = 0
> > sequenceSize = 2
> > (no sequence proxies)
> > clientId = null
> > correlationId = null
> > destination = userDest
> > messageId = EC127CFE-A02C-5988-83D5-4F05075835D5
> > timestamp = 1159188117664
> > timeToLive = 0
> > body =
> > [
> > [EMAIL PROTECTED],
> > [EMAIL PROTECTED]
> > ]
> > 2006-09-25 13:41:57,695 INFO [STDOUT] [Flex] Serializing AMF/HTTP
> > response
> > Version: 3
> > (Message #0 targetURI=/2/onResult, responseURI=)
> > (Typed Object #0 'flex.messaging.messages.AcknowledgeMessage')
> > destination = null
> > headers = (Object #1)
> > correlationId = "A28C8CCD-5F32-1DF7-620C-E4FEF738545B"
> > messageId = "EC127AC0-E50D-DD15-96A9-4CCAC48207B5"
> > timestamp = 1.159188117429E12
> > clientId = "0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1"
> > timeToLive = 0.0
> > body = null
> >
> > (Message #1 targetURI=/3/onResult, responseURI=)
> > (Typed Object #0 'flex.data.messages.SequencedMessage')
> > sequenceId = 0
> > destination = "userDest"
> > headers = (Object #1)
> > dataMessage = null
> > correlationId = "2A9E5067-E387-88A5-C19D-E4FEF738B4C8"
> > messageId = "EC127CFE-A02C-5988-83D5-4F05075835D5"
> > timestamp = 1.159188117664E12
> > clientId = "0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1"
> > timeToLive = 0.0
> > sequenceProxies = null
> > sequenceSize = 2
> > body = (Array #2)
> > [0] = (Typed Object #3
> > 'uk.co.vianet.deviceRepository.users.dto.UserDTO')
> > password = "testing"
> > userType = 2
> > username = "testUser"
> > ownerName = "testOwner"
> > id = 11
> > [1] = (Typed Object #4
> > 'uk.co.vianet.deviceRepository.users.dto.UserDTO')
> > password = "12vianet"
> > userType = 1
> > username = "root"
> > ownerName = "System"
> > id = 12
> > 2006-09-25 13:42:00,883 INFO [STDOUT] [Flex] Channel endpoint
> > my-polling-amf received request.
> > 2006-09-25 13:42:00,883 INFO [STDOUT] [Flex] Deserializing AMF/HTTP
> > request
> > Version: 3
> > (Message #0 targetURI=null, responseURI=/4)
> > (Array #0)
> > [0] = (Typed Object #0 'flex.data.messages.DataMessage')
> > operation = 7
> > body = (Array #1)
> > [0] = (Typed Object #2 'flex.data.messages.DataMessage')
> > operation = 3
> > body = (Array #3)
> > [0] = (Array #4)
> > [0] = "ownerName"
> > [1] = (Object #5)
> > password = "12vianet"
> > ownerName = "System"
> > id = 12
> > userType = 1
> > username = "root"
> > [2] = (Object #6)
> > password = "12vianet"
> > ownerName = "Syste"
> > id = 12
> > userType = 1
> > username = "root"
> > identity = (Object #7)
> > id = 12
> > correlationId = "BC037721-1913-84B4-54EC-E4FF05049D96"
> > body = (Ref #3)
> > clientId = "0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1"
> > timeToLive = 0
> > messageId = "5C8E9D2E-3AEC-4D64-59D3-E4FF04F4E34B"
> > destination = "userDest"
> > timestamp = 0
> > headers = (Object #8)
> > identity = null
> > correlationId = ""
> > body = (Ref #1)
> > clientId = null
> > timeToLive = 0
> > messageId = "BC037721-1913-84B4-54EC-E4FF05049D96"
> > destination = "userDest"
> > timestamp = 0
> > headers = (Object #9)
> > DSEndpoint = "my-polling-amf"
> > 2006-09-25 13:42:00,883 INFO [STDOUT] [Flex] Before invoke service:
> > data-service
> > incomingMessage: Flex Message (flex.data.messages.DataMessage)
> > operation = transacted
> > id = null
> > clientId = EC129BB1-830C-074E-BBE1-5FEEFC9FA13B
> > correlationId =
> > destination = userDest
> > messageId = BC037721-1913-84B4-54EC-E4FF05049D96
> > timestamp = 1159188120883
> > timeToLive = 0
> > body =
> > [
> > Flex Message (flex.data.messages.DataMessage)
> > operation = update
> > id = ASObject(25605488){id=12}
> > clientId = 0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1
> > correlationId = BC037721-1913-84B4-54EC-E4FF05049D96
> > destination = userDest
> > messageId = 5C8E9D2E-3AEC-4D64-59D3-E4FF04F4E34B
> > timestamp = 0
> > timeToLive = 0
> > body =
> > [
> >
> > [
> > ownerName
> > ],
> > {password=12vianet, userType=1, username=root,
> > ownerName=System, id=12},
> > {password=12vianet, userType=1, username=root,
> > ownerName=Syste, id=12}
> > ]
> > ]
> > hdr(DSEndpoint) = my-polling-amf
> > 2006-09-25 13:42:05,726 INFO [STDOUT] [Flex] Channel endpoint
> > my-polling-amf received request.
> > 2006-09-25 13:42:05,726 INFO [STDOUT] [Flex] Deserializing AMF/HTTP
> > request
> > Version: 3
> > (Message #0 targetURI=null, responseURI=/5)
> > (Array #0)
> > [0] = (Typed Object #0 'flex.messaging.messages.CommandMessage')
> > operation = 2
> > messageRefType = "flex.data.messages.DataMessage"
> > correlationId = ""
> > body = (Object #1)
> > clientId = "0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1"
> > timeToLive = 0
> > messageId = "F14A1047-7A43-CCCD-66AD-E4FF181EB256"
> > destination = "userDest"
> > timestamp = 1.159188117428E12
> > headers = (Object #2)
> > 2006-09-25 13:42:05,726 INFO [STDOUT] [Flex] Executed command:
> > service=data-service
> > commandMessage: Flex Message (flex.messaging.messages.CommandMessage)
> > operation = poll
> > messageRefType = flex.data.messages.DataMessage
> > clientId = 0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1
> > correlationId =
> > destination = userDest
> > messageId = F14A1047-7A43-CCCD-66AD-E4FF181EB256
> > timestamp = 1159188117428
> > timeToLive = 0
> > body = {}
> > replyMessage: Flex Message
(flex.messaging.messages.AcknowledgeMessage)
> > clientId = 0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1
> > correlationId = F14A1047-7A43-CCCD-66AD-E4FF181EB256
> > destination = null
> > messageId = EC12C9E1-3E1A-DBE3-4D8A-C094117A3539
> > timestamp = 1159188125726
> > timeToLive = 0
> > body = null
> > 2006-09-25 13:42:05,804 INFO [STDOUT] [Flex] Serializing AMF/HTTP
> > response
> > Version: 3
> > (Message #0 targetURI=/5/onResult, responseURI=)
> > (Typed Object #0 'flex.messaging.messages.AcknowledgeMessage')
> > destination = null
> > headers = (Object #1)
> > correlationId = "F14A1047-7A43-CCCD-66AD-E4FF181EB256"
> > messageId = "EC12C9E1-3E1A-DBE3-4D8A-C094117A3539"
> > timestamp = 1.159188125726E12
> > clientId = "0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1"
> > timeToLive = 0.0
> > body = null
> > 2006-09-25 13:42:05,929 INFO [STDOUT] [Flex] Exception when invoking
> > service: data-service
> > with message: Flex Message (flex.data.messages.DataMessage)
> > operation = transacted
> > id = null
> > clientId = EC129BB1-830C-074E-BBE1-5FEEFC9FA13B
> > correlationId =
> > destination = userDest
> > messageId = BC037721-1913-84B4-54EC-E4FF05049D96
> > timestamp = 1159188120883
> > timeToLive = 0
> > body =
> > [
> > Flex Message (flex.data.messages.DataMessage)
> > operation = update
> > id = ASObject(25605488){id=12}
> > clientId = 0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1
> > correlationId = BC037721-1913-84B4-54EC-E4FF05049D96
> > destination = userDest
> > messageId = 5C8E9D2E-3AEC-4D64-59D3-E4FF04F4E34B
> > timestamp = 0
> > timeToLive = 0
> > body =
> > [
> >
> > [
> > ownerName
> > ],
> > {password=12vianet, userType=1, username=root,
> > ownerName=System, id=12},
> > {password=12vianet, userType=1, username=root,
> > ownerName=Syste, id=12}
> > ]
> > ]
> > hdr(DSEndpoint) = my-polling-amf
> > exception: flex.data.DataServiceException: Unable to access
> > UserTransaction in DataService.
> > 2006-09-25 13:42:06,023 INFO [STDOUT] [Flex] Error handling message:
> > flex.data.DataServiceException: Unable to access UserTransaction in
> > DataService.
> > incomingMessage: Flex Message (flex.data.messages.DataMessage)
> > operation = transacted
> > id = null
> > clientId = EC129BB1-830C-074E-BBE1-5FEEFC9FA13B
> > correlationId =
> > destination = userDest
> > messageId = BC037721-1913-84B4-54EC-E4FF05049D96
> > timestamp = 1159188120883
> > timeToLive = 0
> > body =
> > [
> > Flex Message (flex.data.messages.DataMessage)
> > operation = update
> > id = ASObject(25605488){id=12}
> > clientId = 0CCB8A6D-193B-57D4-2D18-E4FEF65E29F1
> > correlationId = BC037721-1913-84B4-54EC-E4FF05049D96
> > destination = userDest
> > messageId = 5C8E9D2E-3AEC-4D64-59D3-E4FF04F4E34B
> > timestamp = 0
> > timeToLive = 0
> > body =
> > [
> >
> > [
> > ownerName
> > ],
> > {password=12vianet, userType=1, username=root,
> > ownerName=System, id=12},
> > {password=12vianet, userType=1, username=root,
> > ownerName=Syste, id=12}
> > ]
> > ]
> > hdr(DSEndpoint) = my-polling-amf
> > errorReply: Flex Message (flex.messaging.messages.ErrorMessage)
> > clientId = null
> > correlationId = BC037721-1913-84B4-54EC-E4FF05049D96
> > destination = userDest
> > messageId = EC12CCB6-570A-5EEA-4036-12EEC4BDC3AA
> > timestamp = 1159188126023
> > timeToLive = 0
> > body = null
> > code = Server.Processing
> > message = Unable to access UserTransaction in DataService.
> > details = null
> > rootCause = javax.naming.NamingException: Could not dereference
> > object [Root exception is javax.naming.CommunicationException: Receive
> > timed out [Root exception is java.net.SocketTimeoutException: Receive
> > timed out]]
> > body = null
> > extendedData = null
> > 2006-09-25 13:42:06,242 INFO [STDOUT] [Flex] Serializing AMF/HTTP
> > response
> > Version: 3
> > (Message #0 targetURI=/4/onStatus, responseURI=)
> > (Typed Object #0 'flex.messaging.messages.ErrorMessage')
> > rootCause = (Typed Object #1 'javax.naming.NamingException')
> > rootCause = (Typed Object #2
> > 'javax.naming.CommunicationException')
> > rootCause = (Typed Object #3 'java.net.SocketTimeoutException')
> > localizedMessage = "Receive timed out"
> > bytesTransferred = 0
> > message = "Receive timed out"
> > cause = null
> > localizedMessage = "Receive timed out"
> > resolvedObj = null
> > resolvedName = null
> > remainingName = null
> > message = "Receive timed out"
> > cause = (Ref #3)
> > explanation = "Receive timed out"
> > localizedMessage = "Could not dereference object"
> > resolvedObj = null
> > resolvedName = null
> > remainingName = null
> > message = "Could not dereference object"
> > cause = (Ref #2)
> > explanation = "Could not dereference object"
> > destination = "userDest"
> > headers = (Object #4)
> > correlationId = "BC037721-1913-84B4-54EC-E4FF05049D96"
> > faultString = "Unable to access UserTransaction in DataService."
> > messageId = "EC12CCB6-570A-5EEA-4036-12EEC4BDC3AA"
> > faultCode = "Server.Processing"
> > timeToLive = 0.0
> > extendedData = null
> > faultDetail = null
> > clientId = null
> > timestamp = 1.159188126023E12
> > body = null
> >
> > As far as I can tell my assembler is having problems recieving changes
> > to the data, but since it does not touch the Java code I am at a loss
> > as how to fix it.
> >
> > Anyone got any ideas?
> >
> > Thanks,
> >
> > Erik
> >
> > --- In [email protected]
<mailto:flexcoders%40yahoogroups.com>
> > , "Jeff Vroom" <jvroom@> wrote:
> > >
> > > Just to be clear, FDS uses: java:comp/UserTransaction (no
preceeding /
> > > before "comp") (most likely not the problem but just to be sure). It
> > > also could be that the "begin" call is failing for some reason since
> > > that is inside of the same try/catch which logs that error. Did you
> > > try turning on the server debug logging? That ought to provide more
> > > detail about the nature of the actual exception (including a stack
> > trace
> > > so we can see which call is actually failing). To do this, go into
> > > WEB-INF/flex/services-config.xml, search for level= and change the
> > value
> > > to "Debug". Make sure DataService.* and Message.* are included
in the
> > > <pattern> tags just underneath that in the file.
> > >
> > >
> > >
> > > Jeff
> > >
> > >
> > >
> > > ________________________________
> > >
> > > From: [email protected]
<mailto:flexcoders%40yahoogroups.com>
> > [mailto:[email protected]
<mailto:flexcoders%40yahoogroups.com>
> > ] On
> > > Behalf Of erik_jen5en
> > > Sent: Friday, September 22, 2006 6:27 AM
> > > To: [email protected]
<mailto:flexcoders%40yahoogroups.com>
> > > Subject: [flexcoders] Re: Unable to access UserTransaction in
> > > DataService.
> > >
> > >
> > >
> > > JBoss does use the java:/comp/UserTransaction JNDI name for the
> > > UserTransaction, I have used it myself in my own apps.
> > >
> > > Just incase I have tried setting the UserTxJNDI system property
to the
> > > values:
> > >
> > > UserTransaction
> > > java:/UserTransaction
> > > java:/comp/UserTransaction
> > >
> > > All fail! There must be some other configuration that is needed in
> > > the Flex WAR to make this work.
> > >
> > > Thanks,
> > >
> > > Erik
> > >
> > > --- In [email protected]
> > <mailto:flexcoders%40yahoogroups.com>
> > <mailto:flexcoders%40yahoogroups.com>
> > > , "Jeff Vroom" <jvroom@> wrote:
> > > >
> > > > This error occurs because either the server failed to find the
> > > > UserTransaction component or because the "begin" call on the
> > > > UserTransaction is failing. If you turn on debug logging for the
> > > > server, I think you should get a stack trace and possibly more
> > details
> > > > about the exception which is occurring. By default, FDS is looking
> > for
> > > > the UserTransaction in JNDI at the standard location:
> > > > "java:comp/UserTransaction" but it might be that in some
versions of
> > > > JBoss, this is at a different location. I found from a quick
google
> > > > search that maybe they are just using the name
"UserTransaction" in
> > at
> > > > least some versions of Jboss. You can get this behavior by setting
> > the
> > > > system property:
> > > >
> > > >
> > > >
> > > > UserTxJndiName
> > > >
> > > >
> > > >
> > > > To the path name where Jboss has this registered.
> > > >
> > > >
> > > >
> > > > So you'd have to set this system property someplace... for example
> > if
> > > > you can find where you add command line args, you could do: "java
> > > > -DUserTxJNDIName=UserTransaction <rest-of-java-args>"
> > > >
> > > >
> > > >
> > > > Jeff
> > > >
> > > >
> > > >
> > > > ________________________________
> > > >
> > > > From: [email protected]
> > <mailto:flexcoders%40yahoogroups.com>
> > <mailto:flexcoders%40yahoogroups.com>
> > > [mailto:[email protected]
> > <mailto:flexcoders%40yahoogroups.com>
> > <mailto:flexcoders%40yahoogroups.com>
> > > ] On
> > > > Behalf Of erik_jen5en
> > > > Sent: Thursday, September 21, 2006 12:51 AM
> > > > To: [email protected]
<mailto:flexcoders%40yahoogroups.com>
> > <mailto:flexcoders%40yahoogroups.com>
> > > > Subject: [flexcoders] Unable to access UserTransaction in
> > DataService.
> > > >
> > > >
> > > >
> > > > I am trying to use a data service on JBoss but keep getting the
> > > > following error,
> > > >
> > > > [RPC Fault faultString="Unable to access UserTransaction in
> > > > DataService." faultCode="Server.Processing" faultDetail="null"]
> > > > at
> > > >
> > > mx.data::ConcreteDataService/
> > http://www.adobe.com/2006/flex/mx/internal:
> > <http://www.adobe.com/2006/flex/mx/internal:>
> > > <http://www.adobe.com/2006/flex/mx/internal:
> > <http://www.adobe.com/2006/flex/mx/internal:> >
> > > > :dispatchFaultEvent
> > > > <http://www.adobe.com/2006/flex/mx/internal::dispatchFaultEvent
> > <http://www.adobe.com/2006/flex/mx/internal::dispatchFaultEvent>
> > > <http://www.adobe.com/2006/flex/mx/internal::dispatchFaultEvent
> > <http://www.adobe.com/2006/flex/mx/internal::dispatchFaultEvent> >
> ()
> > > > at mx.data::CommitResponder/fault()
> > > > at
> > > >
> > >
> >
mx.rpc::AsyncRequest/fault()[C:\dev\enterprise_gmc\frameworks\mx\rpc\Asy
> > > > ncRequest.as:107]
> > > > at
> > > >
> > >
> >
NetConnectionChannel.as$37::NetConnectionMessageResponder/NetConnectionC
> > > >
> > >
> >
hannel.as$37:NetConnectionMessageResponder::statusHandler()[C:\dev\enter
> > > >
> > >
> >
prise_gmc\frameworks\mx\messaging\channels\NetConnectionChannel.as:458]
> > > > at
> > > >
> > >
> >
mx.messaging::MessageResponder/status()[C:\dev\enterprise_gmc\frameworks
> > > > \mx\messaging\MessageResponder.as:225]
> > > >
> > > > Is there some additional setup for transactions needed on the
JBoss
> > > > application server?
> > > >
> > >
> >
>
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/flexcoders/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/flexcoders/join
(Yahoo! ID required)
<*> To change settings via email:
mailto:[EMAIL PROTECTED]
mailto:[EMAIL PROTECTED]
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/