Search code examples
javaweb-servicesejbjava-ee-7

JavaEE: Web Service Deployed Successfully but Tester is not Working


I am a student & totally new in JavaEE development. I created an independent EJB Project and created Web services in it. I am consuming that service in a Java Web Application project using the Web Service WSDL.

When I deployed the EJB project, I got something like this. i.e. deployed successsfully.

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.


But When I try to test the Web Service, it gives me the following dialog box:


enter image description here


And the Glassfish Log says:


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


So I am stuck here like forever. Can anyone please put some light on this, like what might be the problem and why this is happening. Any Hint would help.

Edit:

I also tried to access my WSDL as shown below and it returns WSDL XML as shown below:


enter image description here


And then I tried to directly access the tester but this what happens:


enter image description here

Same is for all the Web Services. None of them is working.

Note: I am using @WebService(name = "<Service Name>") annotation to use the EJB's I created as Web Service.


Solution

  • Friends I got the solution for my problem...


    This is problem is possibly faced by the users of Java SDK 7 (with latest updates) or Java SDK 8.

    When this problem arises you could use the following steps:

    Step 1: Modify the IDE configuration file (netbeans.conf) to add the following switch to netbeans_default_options.

    -J-Djavax.xml.accessExternalSchema=all

           Note: You can find netbeans.conf file in ${nb-install}/etc/ directory. more info.

    Step 2: Open the GlassFish configuration file and add the following JVM option element. You will need to restart the server for the change to take effect.

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


    Step 3: Create a file named jaxp.properties (if it doesn't exist) under /path/to/jdk1.8.0/jre/lib and then write this line in it:

    javax.xml.accessExternalSchema = all


    I got this solution from the following links: