Мне было трудно получить простой веб-сервис, развернутый на GlassFish 3.1.1 Я получаю следующее исключение при развертывании:
Причина: java.lang.ClassCastException: com.sun.enterpriseНевозможно преобразовать.apf.impl.AnnotationProcessorImpl.process (AnnotationProcessorImpl.java:344) ... еще 42
Вот мой класс WebService:
@Stateless
@WebServiceProvider(
serviceName = "HelloWorldProviderService",
portName = "HelloWorldProviderPort",
targetNamespace = "http://mydomain.com/wsdl"
)
@ServiceMode(value= Service.Mode.PAYLOAD)
public class HelloWorldProvider implements Provider<Source>
{
@Override
public Source invoke(Source request)
{
StringWriter requestXmlWriter = new StringWriter();
try
{
Transformer copier = TransformerFactory.newInstance().newTransformer();
copier.transform(request, new StreamResult(requestXmlWriter));
System.out.println(requestXmlWriter.toString());
return new StreamSource(new StringReader("<HelloBack/>"));
}
catch (TransformerException e)
{
throw new RuntimeException("Failed to convert");
}
}
}
План войны -
|__ WEB-INF
| |__ web.xml
|
|__ classes
| |__ META-INF
| | |__ ejb-jar.xml
| |
| |__ <classfile>
|
|__ lib
| |__ <empty>
Это работает в моей тестовой среде с использованием OpenEjb, но мне нужно, чтобы она работала против GlassFish, и предложения были бы хорошими.
Спасибо -kurt