JavaEE:Web服务已成功部署但测试人员无法正常工作

时间:2014-06-10 07:50:17

标签: java web-services ejb java-ee-7

我是学生&在JavaEE开发中是全新的。我创建了一个独立的 EJB项目并在其中创建了Web服务。我使用 Web服务WSDL Java Web应用程序项目中使用该服务。

当我部署EJB项目时,我得到了类似的东西。即成功部署。

Info:   file:/media/benison/EXTRA/8th Sem Java Project/Projects/BusinessFacade/build/classes/_BusinessFacadePU logout successful
Info:   visiting unvisited references
Info:   visiting unvisited references
Info:   Entity.YearSemesterStudent actually got transformed
Info:   Entity.YearSemesterStudentPK actually got transformed
Info:   Entity.YearSemester actually got transformed
Info:   Entity.Student actually got transformed
Info:   Entity.CollegeCategory actually got transformed
Info:   Entity.Faculty actually got transformed
Info:   Entity.StudentMark actually got transformed
Info:   Entity.Exam actually got transformed
Info:   Entity.Setting actually got transformed
Info:   Entity.College actually got transformed
Info:   Entity.Subject actually got transformed
Info:   Entity.Contact actually got transformed
Info:   Entity.UserGroup actually got transformed
Info:   Entity.SubjectTeachingFaculty actually got transformed
Info:   Entity.SubjectTeachingFacultyPK actually got transformed
Info:   Entity.TeachingFaculty actually got transformed
Info:   Entity.DepartmentCourse actually got transformed
Info:   Entity.Event actually got transformed
Info:   Entity.News actually got transformed
Info:   Entity.Department actually got transformed
Info:   Entity.Employee actually got transformed
Info:   Entity.Course actually got transformed
Info:   Entity.UserType actually got transformed
Info:   Entity.User actually got transformed
Info:   EclipseLink, version: Eclipse Persistence Services - 2.5.0.v20130507-3faac2b
Info:   file:/media/benison/EXTRA/8th Sem Java Project/Projects/BusinessFacade/build/classes/_BusinessFacadePU login successful
Warning:   Container org.glassfish.webservices.JAXWSContainer@63cb3e9d doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB UserRegistration: [java:global/BusinessFacade/UserRegistration!WebService.UserRegistration, java:global/BusinessFacade/UserRegistration]
Warning:   Container org.glassfish.webservices.JAXWSContainer@27add948 doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB BLCollege: [java:global/BusinessFacade/BLCollege!EJB.BusinessLogic.IBLCollegeLocal, java:global/BusinessFacade/BLCollege]
Warning:   Container org.glassfish.webservices.JAXWSContainer@6b9b0733 doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB ALContact: [java:global/BusinessFacade/ALContact, java:global/BusinessFacade/ALContact!EJB.ApplicationLogic.IALContactLocal]
Warning:   Container org.glassfish.webservices.JAXWSContainer@69591e98 doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB ALSetting: [java:global/BusinessFacade/ALSetting, java:global/BusinessFacade/ALSetting!EJB.ApplicationLogic.IALSetting]
Warning:   Container org.glassfish.webservices.JAXWSContainer@72f12b2 doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB BLFaculty: [java:global/BusinessFacade/BLFaculty!EJB.BusinessLogic.IBLFacultyLocal, java:global/BusinessFacade/BLFaculty]
Warning:   Container org.glassfish.webservices.JAXWSContainer@1e6656ed doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB ALEvent: [java:global/BusinessFacade/ALEvent, java:global/BusinessFacade/ALEvent!EJB.ApplicationLogic.IALEventLocal]
Warning:   Container org.glassfish.webservices.JAXWSContainer@64061112 doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB BLExam: [java:global/BusinessFacade/BLExam!EJB.BusinessLogic.IBLExamLocal, java:global/BusinessFacade/BLExam]
Warning:   Container org.glassfish.webservices.JAXWSContainer@487ec88a doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB BLSubject: [java:global/BusinessFacade/BLSubject!EJB.BusinessLogic.IBLSubjectLocal, java:global/BusinessFacade/BLSubject]
Warning:   Container org.glassfish.webservices.JAXWSContainer@39b16787 doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB ALUserGroup: [java:global/BusinessFacade/ALUserGroup!EJB.ApplicationLogic.IALUserGroupLocal, java:global/BusinessFacade/ALUserGroup]
Warning:   Container org.glassfish.webservices.JAXWSContainer@67305b5a doesn't support class com.sun.xml.ws.api.server.Module
Info:   EJB5181:Portable JNDI names for EJB BLStudent: [java:global/BusinessFacade/BLStudent!EJB.BusinessLogic.IBLStudentLocal, java:global/BusinessFacade/BLStudent]
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/BLExamService/ExamService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/BLSubjectService/SubjectService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/BLStudentService/StudentService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/ALUserGroupService/UserGroupService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/ALEventService/EventService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/ALSettingService/SettingService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/BLFacultyService/FacultyService
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/BLCollegeService/CollegeService
Info:   EJB Endpoint deployed Busines![enter image description here][1]sFacade
  listening at address at http://benison-VirtualBox:8080/UserRegistration/UserRegistration
Info:   EJB Endpoint deployed BusinessFacade
  listening at address at http://benison-VirtualBox:8080/ALContactService/ContactService
Info:   BusinessFacade was successfully deployed in 4,027 milliseconds.


但是当我尝试测试Web服务时,它会给我以下对话框:


enter image description here


Glassfish Log说:


Info:   Invoking wsimport with http://localhost:8080/BLExamService/ExamService?WSDL
Info:   parsing WSDL...
Info:   [WARNING] schema_reference: Failed to read schema document 'ExamService?xsd=1', because 'http' access is not allowed due to restriction set by the accessExternalSchema property.
Info:   line 4 of http://localhost:8080/BLExamService/ExamService?WSDL#types?schema1
Severe:   service exception:
java.lang.AssertionError:     org.xml.sax.SAXParseException; systemId: bundle://300.0:1/    com/sun/tools/xjc/reader/xmlschema/bindinfo/binding.xsd; lineNumber: 52; columnNumber: 88; schema_reference: Failed to read schema document 'xjc.xsd', because 'bundle' access is not allowed due to restriction set by the accessExternalSchema property. 
at     com.sun.tools.xjc.SchemaCache.newValidator(SchemaCache.java:80)
at     com.sun.tools.xjc.reader.internalizer.SCDBasedBindingSet.apply(SCDBasedBindingSet.java:237)
at     com.sun.tools.xjc.ModelLoader.createXSOM(ModelLoader.java:541)
at     com.sun.tools.xjc.api.impl.s2j.Schema    compilerImpl.bind(Schema    compilerImpl.java:269)
at     com.sun.tools.xjc.api.impl.s2j.Schema    compilerImpl.bind(Schema    compilerImpl.java:95)
at     com.sun.tools.ws.processor.modeler.wsdl.JAXBModelBuilder.bind(JAXBModelBuilder.java:142)
at     com.sun.tools.ws.processor.modeler.wsdl.WSDLModeler.buildJAXBModel(WSDLModeler.java:2298)
at     com.sun.tools.ws.processor.modeler.wsdl.WSDLModeler.internalBuildModel(WSDLModeler.java:198)
at     com.sun.tools.ws.processor.modeler.wsdl.WSDLModeler.buildModel(WSDLModeler.java:141)
at     com.sun.tools.ws.ws    compile.WsimportTool.buildWsdlModel(WsimportTool.java:444)
at     com.sun.tools.ws.ws    compile.WsimportTool.run(WsimportTool.java:205)
at     com.sun.tools.ws.ws    compile.WsimportTool.run(WsimportTool.java:183)
at     com.sun.tools.ws.util.WSToolsObjectFactoryImpl.wsimport(WSToolsObjectFactoryImpl.java:60)
at     com.sun.tools.ws.spi.WSToolsObjectFactory.wsimport(WSToolsObjectFactory.java:88)
at     org.glassfish.webservices.monitoring.WebServiceTesterServlet.wsImport(WebServiceTesterServlet.java:642)
at     org.glassfish.webservices.monitoring.WebServiceTesterServlet.initializePort(WebServiceTesterServlet.java:528)
at     org.glassfish.webservices.monitoring.WebServiceTesterServlet.doGet(WebServiceTesterServlet.java:169)
at     org.glassfish.webservices.monitoring.WebServiceTesterServlet.invoke(WebServiceTesterServlet.java:104)
at     org.glassfish.webservices.EjbWebServiceServlet.service(EjbWebServiceServlet.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at     org.glassfish.grizzly.servlet.ServletHandler.doServletService(ServletHandler.java:242)
at     org.glassfish.grizzly.servlet.ServletHandler.service(ServletHandler.java:193)
at     com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at     org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at     org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at     org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at     org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at     org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at     org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at     org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at     org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at     org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at     org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at     org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at     org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at     org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at     org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at     org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at     org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:745)
Caused by:     org.xml.sax.SAXParseException; systemId: bundle://300.0:1/    com/sun/tools/xjc/reader/xmlschema/bindinfo/binding.xsd; lineNumber: 52; columnNumber: 88; schema_reference: Failed to read schema document 'xjc.xsd', because 'bundle' access is not allowed due to restriction set by the accessExternalSchema property. 
at     com.sun.    org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
at     com.sun.    org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
at     com.sun.    org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
at     com.sun.    org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:4162)
at     com.sun.    org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaFatalError(XSDHandler.java:4141)
at     com.sun.    org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getSchemaDocument(XSDHandler.java:2168)
at     com.sun.    org.apache.xerces.internal.impl.xs.traversers.XSDHandler.resolveSchema(XSDHandler.java:2078)
at     com.sun.    org.apache.xerces.internal.impl.xs.traversers.XSDHandler.constructTrees(XSDHandler.java:1008)
at     com.sun.    org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:620)
at     com.sun.    org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:616)
at     com.sun.    org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:574)
at     com.sun.    org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:540)
at     com.sun.    org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory.newSchema(XMLSchemaFactory.java:255)
at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:638)
at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:670)
at     com.sun.tools.xjc.SchemaCache.newValidator(SchemaCache.java:77)
... 39 more


所以我永远被困在这里。任何人都可以对此有所了解,比如可能是什么问题以及为什么会发生这种情况。任何提示都会有所帮助。

修改

我也尝试访问我的WSDL,如下所示,它返回WSDL XML,如下所示:


enter image description here


然后我尝试直接访问测试仪,但这会发生什么:


enter image description here

同样适用于所有Web服务。他们都没有工作。

注意:我使用@WebService(name =&#34;&lt; Service Name&gt;&#34;)注释来使用我创建的Web服务。< / p>

3 个答案:

答案 0 :(得分:3)

朋友我为我的问题找到了解决方案......


这是Java SDK 7(带有最新更新)或Java SDK 8的用户可能遇到的问题。

出现此问题时,您可以使用以下步骤:

步骤1:修改IDE配置文件( netbeans.conf ),将以下开关添加到netbeans_default_options。

  

-J-Djavax.xml.accessExternalSchema =所有

注意:您可以在 $ {nb-install} / etc / 中找到 netbeans.conf 文件目录。 more info

步骤2:打开GlassFish配置文件并添加以下JVM选项元素。您需要重新启动服务器才能使更改生效。

  

&LT; java的配置&GT;   
  ...   
   &LT; JVM-选项&gt; -Djavax.xml.accessExternalSchema = all&lt; / jvm-options&gt;   
  &LT; / java的配置&GT;


第3步: / path /下创建一个名为 jaxp.properties 的文件(如果它不存在) /jdk1.8.0/jre/lib 然后在其中写下这一行:

  

javax.xml.accessExternalSchema = all


我从以下链接获得了这个解决方案:

答案 1 :(得分:2)

我认为您需要使用以下内容更新Glassfish服务器的 domain.xml 文件:

</java-config>
    ...
    <jvm-options>-Djavax.xml.accessExternalSchema=all</jvm-options>
</java-config>

可能还需要完成其他一些设置。有关详细信息,请参阅https://netbeans.org/kb/docs/websvc/jax-ws.html。希望它有所帮助!!

答案 2 :(得分:0)

您是否仔细阅读过您的玻璃鱼堆痕迹?

       [WARNING] schema_reference: Failed to read schema document 'ExamService?xsd=1', because 'http' access is not allowed due to restriction set by the accessExternalSchema property

看起来像&#39; http&#39;不允许访问,必须使用SSL协议。