You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@juddi.apache.org by "Geir Magnusson Jr." <ge...@apache.org> on 2005/02/09 15:48:00 UTC

"Client error" (newbie question)

Ok - I'm a real newbie, and don't grok how one debugs things here.

I'm testing against IBMs public testregistry (is there a better one?).   
I have the following problem all over the place.   I'm using the latest  
CVS of jUDDI and Scout.  Can someone spend 2 min to describe what is  
going on, how I should start figuring out what the error is?

     [java] Method:save_business: ENlength=1
     [java] AxisFault
     [java]  faultCode: Client
     [java]  faultSubcode:
     [java]  faultString: Client Error
     [java]  faultActor:
     [java]  faultNode:
     [java]  faultDetail:
     [java]      {urn:uddi-org:api_v2}dispositionReport:<result  
errno="10500"><errInfo errCode="E_fatalError">E_fatalError (10500)  
Serious technical error has occurred while processing the request.  
cvc-complex-type.4: Attribute 'businessKey' must appear on element  
'businessEntity'.</errInfo></result>
     [java]
     [java] Client Error
     [java]      at  
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.ja 
va:221)
     [java]      at  
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.jav 
a:128)
     [java]      at  
org.apache.axis.encoding.DeserializationContext.endElement(Deserializati 
onContext.java:1077)
     [java]      at  
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712)
     [java]      at  
org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
     [java]      at  
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
     [java]      at  
org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
     [java]      at  
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
     [java]      at  
org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
     [java]      at  
org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
     [java]      at  
org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
     [java]      at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
     [java]      at  
org.apache.axis.encoding.DeserializationContext.parse(DeserializationCon 
text.java:225)
     [java]      at  
org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
     [java]      at  
org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
     [java]      at  
org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java 
:723)
     [java]      at  
org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:94)
     [java]      at  
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.j 
ava:32)
     [java]      at  
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
     [java]      at  
org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
     [java]      at  
org.apache.axis.client.AxisClient.invoke(AxisClient.java:147)
     [java]      at  
org.apache.axis.client.Call.invokeEngine(Call.java:2737)
     [java]      at org.apache.axis.client.Call.invoke(Call.java:2720)
     [java]      at org.apache.axis.client.Call.invoke(Call.java:1756)
     [java]      at  
org.apache.juddi.proxy.AxisTransport.send(AxisTransport.java:59)
     [java]      at  
org.apache.juddi.proxy.RegistryProxy.execute(RegistryProxy.java:371)
     [java]      at  
org.apache.juddi.AbstractRegistry.saveBusiness(AbstractRegistry.java: 
582)
     [java]      at  
org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.executeOperati 
on(BusinessLifeCycleManagerImpl.java:459)
     [java]      at  
org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.saveOrganizati 
ons(BusinessLifeCycleManagerImpl.java:321)



-- 
Geir Magnusson Jr                                  +1-203-665-6437
geirm@apache.org


Re: "Client error" (newbie question)

Posted by "Geir Magnusson Jr." <ge...@apache.org>.
On Feb 9, 2005, at 10:36 AM, Anil Saldhana wrote:

> Geir,
>    looks like you are using the Crimson parser that
> comes with the JDK. You should be using Xerces.  The
> way to do is to set a System property
> "java.endorsed.dirs"  that points to your xerces jars.
>

Ok - I got xerces working but I seem to have the same thing :

     [java]  
BusinessService=org.apache.juddi.datatype.service.BusinessService@f0ca71
     [java] ?Org has users=false
     [java] Telephone=123-1234
     [java] Telephone=123-1234
     [java] Telephone=123-1234
     [java] Method:save_business: ENlength=1
     [java] AxisFault
     [java]  faultCode: Client
     [java]  faultSubcode:
     [java]  faultString: Client Error
     [java]  faultActor:
     [java]  faultNode:
     [java]  faultDetail:
     [java]      {urn:uddi-org:api_v2}dispositionReport:<result  
errno="10500"><errInfo errCode="E_fatalError">E_fatalError (10500)  
Serious technical error has occurred while processing the request.  
cvc-complex-type.4: Attribute 'businessKey' must appear on element  
'businessEntity'.</errInfo></result>
     [java]
     [java] Client Error
     [java]      at  
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.ja 
va:221)
     [java]      at  
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.jav 
a:128)
     [java]      at  
org.apache.axis.encoding.DeserializationContext.endElement(Deserializati 
onContext.java:1077)
     [java]      at  
org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
     [java]      at  
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown  
Source)
     [java]      at  
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDis 
patcher.dispatch(Unknown Source)
     [java]      at  
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unkno 
wn Source)
     [java]      at  
org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
     [java]      at  
org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
     [java]      at org.apache.xerces.parsers.XMLParser.parse(Unknown  
Source)
     [java]      at  
org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
     [java]      at javax.xml.parsers.SAXParser.parse(Unknown Source)
     [java]      at  
org.apache.axis.encoding.DeserializationContext.parse(DeserializationCon 
text.java:225)
     [java]      at  
org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
     [java]      at  
org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
     [java]      at  
org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java 
:723)
     [java]      at  
org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:94)
     [java]      at  
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.j 
ava:32)
     [java]      at  
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
     [java]      at  
org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
     [java]      at  
org.apache.axis.client.AxisClient.invoke(AxisClient.java:147)
     [java]      at  
org.apache.axis.client.Call.invokeEngine(Call.java:2737)
     [java]      at org.apache.axis.client.Call.invoke(Call.java:2720)
     [java]      at org.apache.axis.client.Call.invoke(Call.java:1756)
     [java]      at  
org.apache.juddi.proxy.AxisTransport.send(AxisTransport.java:59)
     [java]      at  
org.apache.juddi.proxy.RegistryProxy.execute(RegistryProxy.java:371)
     [java]      at  
org.apache.juddi.AbstractRegistry.saveBusiness(AbstractRegistry.java: 
582)
     [java]      at  
org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.executeOperati 
on(BusinessLifeCycleManagerImpl.java:459)
     [java]      at  
org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.saveOrganizati 
ons(BusinessLifeCycleManagerImpl.java:321)



> Anil
>
>
> --- "Geir Magnusson Jr." <ge...@apache.org> wrote:
>
>>
>> Ok - I'm a real newbie, and don't grok how one
>> debugs things here.
>>
>> I'm testing against IBMs public testregistry (is
>> there a better one?).
>> I have the following problem all over the place.
>> I'm using the latest
>> CVS of jUDDI and Scout.  Can someone spend 2 min to
>> describe what is
>> going on, how I should start figuring out what the
>> error is?
>>
>>      [java] Method:save_business: ENlength=1
>>      [java] AxisFault
>>      [java]  faultCode: Client
>>      [java]  faultSubcode:
>>      [java]  faultString: Client Error
>>      [java]  faultActor:
>>      [java]  faultNode:
>>      [java]  faultDetail:
>>      [java]
>> {urn:uddi-org:api_v2}dispositionReport:<result
>> errno="10500"><errInfo
>> errCode="E_fatalError">E_fatalError (10500)
>> Serious technical error has occurred while
>> processing the request.
>> cvc-complex-type.4: Attribute 'businessKey' must
>> appear on element
>> 'businessEntity'.</errInfo></result>
>>      [java]
>>      [java] Client Error
>>      [java]      at
>>
> org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.j 
> a
>>
>> va:221)
>>      [java]      at
>>
> org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.ja 
> v
>>
>> a:128)
>>      [java]      at
>>
> org.apache.axis.encoding.DeserializationContext.endElement(Deserializat 
> i
>>
>> onContext.java:1077)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
>>      [java]      at
>>
> org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
>>      [java]      at
>>
> javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
>>      [java]      at
>>
> org.apache.axis.encoding.DeserializationContext.parse(DeserializationCo 
> n
>>
>> text.java:225)
>>      [java]      at
>>
> org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
>>      [java]      at
>>
> org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
>>      [java]      at
>>
> org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.jav 
> a
>>
>> :723)
>>      [java]      at
>>
> org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:94)
>>      [java]      at
>>
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy. 
> j
>>
>> ava:32)
>>      [java]      at
>>
> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
>>      [java]      at
>>
> org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
>>      [java]      at
>>
> org.apache.axis.client.AxisClient.invoke(AxisClient.java:147)
>>      [java]      at
>>
> org.apache.axis.client.Call.invokeEngine(Call.java:2737)
>>      [java]      at
>> org.apache.axis.client.Call.invoke(Call.java:2720)
>>      [java]      at
>> org.apache.axis.client.Call.invoke(Call.java:1756)
>>      [java]      at
>>
> org.apache.juddi.proxy.AxisTransport.send(AxisTransport.java:59)
>>      [java]      at
>>
> org.apache.juddi.proxy.RegistryProxy.execute(RegistryProxy.java:371)
>>      [java]      at
>>
> org.apache.juddi.AbstractRegistry.saveBusiness(AbstractRegistry.java:
>>
>> 582)
>>      [java]      at
>>
> org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.executeOperat 
> i
>>
>> on(BusinessLifeCycleManagerImpl.java:459)
>>      [java]      at
>>
> org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.saveOrganizat 
> i
>>
>> ons(BusinessLifeCycleManagerImpl.java:321)
>>
>>
>>
>> -- 
>> Geir Magnusson Jr
>> +1-203-665-6437
>> geirm@apache.org
>>
>>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
>
-- 
Geir Magnusson Jr                                  +1-203-665-6437
geirm@apache.org


Re: "Client error" (newbie question)

Posted by "Geir Magnusson Jr." <ge...@apache.org>.
On Feb 9, 2005, at 10:36 AM, Anil Saldhana wrote:

> Geir,
>    looks like you are using the Crimson parser that
> comes with the JDK. You should be using Xerces.  The
> way to do is to set a System property
> "java.endorsed.dirs"  that points to your xerces jars.

Thanks, and thanks for the quick response.  I'll do that.

As an aside - what is the technical problem?  Why isn't Crimson  
sufficient?

geir

>
> Anil
>
>
> --- "Geir Magnusson Jr." <ge...@apache.org> wrote:
>
>>
>> Ok - I'm a real newbie, and don't grok how one
>> debugs things here.
>>
>> I'm testing against IBMs public testregistry (is
>> there a better one?).
>> I have the following problem all over the place.
>> I'm using the latest
>> CVS of jUDDI and Scout.  Can someone spend 2 min to
>> describe what is
>> going on, how I should start figuring out what the
>> error is?
>>
>>      [java] Method:save_business: ENlength=1
>>      [java] AxisFault
>>      [java]  faultCode: Client
>>      [java]  faultSubcode:
>>      [java]  faultString: Client Error
>>      [java]  faultActor:
>>      [java]  faultNode:
>>      [java]  faultDetail:
>>      [java]
>> {urn:uddi-org:api_v2}dispositionReport:<result
>> errno="10500"><errInfo
>> errCode="E_fatalError">E_fatalError (10500)
>> Serious technical error has occurred while
>> processing the request.
>> cvc-complex-type.4: Attribute 'businessKey' must
>> appear on element
>> 'businessEntity'.</errInfo></result>
>>      [java]
>>      [java] Client Error
>>      [java]      at
>>
> org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.j 
> a
>>
>> va:221)
>>      [java]      at
>>
> org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.ja 
> v
>>
>> a:128)
>>      [java]      at
>>
> org.apache.axis.encoding.DeserializationContext.endElement(Deserializat 
> i
>>
>> onContext.java:1077)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
>>      [java]      at
>>
> org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
>>      [java]      at
>>
> org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
>>      [java]      at
>>
> javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
>>      [java]      at
>>
> org.apache.axis.encoding.DeserializationContext.parse(DeserializationCo 
> n
>>
>> text.java:225)
>>      [java]      at
>>
> org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
>>      [java]      at
>>
> org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
>>      [java]      at
>>
> org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.jav 
> a
>>
>> :723)
>>      [java]      at
>>
> org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:94)
>>      [java]      at
>>
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy. 
> j
>>
>> ava:32)
>>      [java]      at
>>
> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
>>      [java]      at
>>
> org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
>>      [java]      at
>>
> org.apache.axis.client.AxisClient.invoke(AxisClient.java:147)
>>      [java]      at
>>
> org.apache.axis.client.Call.invokeEngine(Call.java:2737)
>>      [java]      at
>> org.apache.axis.client.Call.invoke(Call.java:2720)
>>      [java]      at
>> org.apache.axis.client.Call.invoke(Call.java:1756)
>>      [java]      at
>>
> org.apache.juddi.proxy.AxisTransport.send(AxisTransport.java:59)
>>      [java]      at
>>
> org.apache.juddi.proxy.RegistryProxy.execute(RegistryProxy.java:371)
>>      [java]      at
>>
> org.apache.juddi.AbstractRegistry.saveBusiness(AbstractRegistry.java:
>>
>> 582)
>>      [java]      at
>>
> org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.executeOperat 
> i
>>
>> on(BusinessLifeCycleManagerImpl.java:459)
>>      [java]      at
>>
> org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.saveOrganizat 
> i
>>
>> ons(BusinessLifeCycleManagerImpl.java:321)
>>
>>
>>
>> -- 
>> Geir Magnusson Jr
>> +1-203-665-6437
>> geirm@apache.org
>>
>>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
>
-- 
Geir Magnusson Jr                                  +1-203-665-6437
geirm@apache.org


Re: "Client error" (newbie question)

Posted by Anil Saldhana <an...@yahoo.com>.
Geir,
   looks like you are using the Crimson parser that
comes with the JDK. You should be using Xerces.  The
way to do is to set a System property
"java.endorsed.dirs"  that points to your xerces jars.

Anil


--- "Geir Magnusson Jr." <ge...@apache.org> wrote:

> 
> Ok - I'm a real newbie, and don't grok how one
> debugs things here.
> 
> I'm testing against IBMs public testregistry (is
> there a better one?).   
> I have the following problem all over the place.  
> I'm using the latest  
> CVS of jUDDI and Scout.  Can someone spend 2 min to
> describe what is  
> going on, how I should start figuring out what the
> error is?
> 
>      [java] Method:save_business: ENlength=1
>      [java] AxisFault
>      [java]  faultCode: Client
>      [java]  faultSubcode:
>      [java]  faultString: Client Error
>      [java]  faultActor:
>      [java]  faultNode:
>      [java]  faultDetail:
>      [java]     
> {urn:uddi-org:api_v2}dispositionReport:<result  
> errno="10500"><errInfo
> errCode="E_fatalError">E_fatalError (10500)  
> Serious technical error has occurred while
> processing the request.  
> cvc-complex-type.4: Attribute 'businessKey' must
> appear on element  
> 'businessEntity'.</errInfo></result>
>      [java]
>      [java] Client Error
>      [java]      at  
>
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.ja
> 
> va:221)
>      [java]      at  
>
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.jav
> 
> a:128)
>      [java]      at  
>
org.apache.axis.encoding.DeserializationContext.endElement(Deserializati
> 
> onContext.java:1077)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
>      [java]      at  
>
org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
>      [java]      at  
>
org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
>      [java]      at
>
javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
>      [java]      at  
>
org.apache.axis.encoding.DeserializationContext.parse(DeserializationCon
> 
> text.java:225)
>      [java]      at  
>
org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
>      [java]      at  
>
org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
>      [java]      at  
>
org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java
> 
> :723)
>      [java]      at  
>
org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:94)
>      [java]      at  
>
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.j
> 
> ava:32)
>      [java]      at  
>
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
>      [java]      at  
>
org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
>      [java]      at  
>
org.apache.axis.client.AxisClient.invoke(AxisClient.java:147)
>      [java]      at  
>
org.apache.axis.client.Call.invokeEngine(Call.java:2737)
>      [java]      at
> org.apache.axis.client.Call.invoke(Call.java:2720)
>      [java]      at
> org.apache.axis.client.Call.invoke(Call.java:1756)
>      [java]      at  
>
org.apache.juddi.proxy.AxisTransport.send(AxisTransport.java:59)
>      [java]      at  
>
org.apache.juddi.proxy.RegistryProxy.execute(RegistryProxy.java:371)
>      [java]      at  
>
org.apache.juddi.AbstractRegistry.saveBusiness(AbstractRegistry.java:
> 
> 582)
>      [java]      at  
>
org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.executeOperati
> 
> on(BusinessLifeCycleManagerImpl.java:459)
>      [java]      at  
>
org.apache.ws.scout.registry.BusinessLifeCycleManagerImpl.saveOrganizati
> 
> ons(BusinessLifeCycleManagerImpl.java:321)
> 
> 
> 
> -- 
> Geir Magnusson Jr                                 
> +1-203-665-6437
> geirm@apache.org
> 
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com