【问题标题】:Why Emite package does not have Conversation class and session.onStateChanged does not accept arguments (Listener<Session.State>(){})?为什么 Emite 包没有 Conversation 类并且 session.onStateChanged 不接受参数(Listener<Session.State>(){})?
【发布时间】:2015-08-07 16:56:22
【问题描述】:

我找到了一个链接,其中显示了如何在 GWT (https://code.google.com/p/emite/wiki/BasicExample) 中使用 Emite 语音聊天的基本示例

但是,并没有一步一步解释清楚。

我下载了emite-0.5.0.jar & suco-0.6.0.jar 并将它们放入lib 文件夹中。

 <module>
  <inherits name="com.google.gwt.user.User" />
  <inherits name="com.calclab.emite.core.EmiteCore" />
  <inherits name="com.calclab.emite.im.EmiteIM" />

  <entry-point
    class="com.calclab.examples.emite.basics.client.EmiteBasicsEntryPoint" />

  <servlet path="/proxy" class="de.spieleck.servlets.ProxyServlet"/>

</module>

和代码

    public class EmiteBasicsEntryPoint implements EntryPoint {

    private TextArea area;

    public void onModuleLoad() {
        initOutput();

        // Suco is a facade that give access to every emite component we need
        // ******** 0. Configure connection settings *********
        final Connection connection = Suco.get(Connection.class);
        connection.setSettings(new BoshSettings("proxy", "localhost"));
        // ...but there's a module, BrowserModule, that allows to configure
        // the connections settings in the html directly

        // ******** 1. Session *********
        // Session is the emite component that allows us to login/logout among
        // other things
        final Session session = Suco.get(Session.class);

        // Session.onStateChanged allows us to know the state of the session
        session.onStateChanged(new Listener<Session.State>() {
            public void onEvent(final Session.State state) {
                print("Session state: " + state);
            }
        });

        // Session.login and Session.logout are our xmpp entrance and exit
        session.login(uri("test1@localhost"), "test1");

        // After login, we can send messages ...
        session.send(new Message("Hello", uri("test2@localhost")));
        // ... or receive messages ...
        session.onMessage(new Listener<Message>() {
            public void onEvent(final Message message) {
                print("Message arrived: " + message.getBody());
            }
        });

        // ******** 2. ChatManager *********
        // ... but probably you prefer to use the a powerful abstraction: Chat
        final ChatManager chatManager = Suco.get(ChatManager.class);
        final Conversation chat = chatManager.openChat(uri("test2@localhost"), null, null);
        // with chats you don't have to specify the recipient
        chat.send(new Message("Hello test2"));
        // and you only receive messages from the entity you specified
        chat.onMessageReceived(new Listener<Message>() {
            public void onEvent(final Message message) {
                print("Message from test2 arrived: " + message.getBody());
            }
        });

        // ******** 3. Roster *********
        // As always, Suco is our friend...
        final Roster roster = Suco.get(Roster.class);
        // ... we're in asynchronous world... use listeners
        // onRosterRetrieved is fired when... surprise! the roster is retrieved
        roster.onRosterRetrieved(new Listener<Collection<RosterItem>>() {
            public void onEvent(final Collection<RosterItem> items) {
                print("We have the roster");
                for (final RosterItem item : items) {
                    print("Roster item: " + item);
                }
            }
        });
        // we can track changes in roster items (i.e. roster presence changes)
        // using Roster.onItemUpdated
        roster.onItemUpdated(new Listener<RosterItem>() {
            public void onEvent(final RosterItem item) {
                print("Roster item changed:" + item);
            }
        });
    }

    private void initOutput() {
        area = new TextArea();
        RootPanel.get().add(area);
        print("Welcome to emite basics example.");
    }

    /**
     * a helper method to output messages
     * 
     * @param message
     */
    private void print(final String message) {
        area.setText(area.getText() + "\n" + message);
    }

}

但是,上面的 2 个包没有 Conversation 类并且示例中没有 uri 方法。

另外,下面的代码出现错误The method onStateChanged(Listener&lt;Session&gt;) in the type Session is not applicable for the arguments (new Listener&lt;Session.State&gt;(){})

session.onStateChanged(new Listener<Session.State>() {
        public void onEvent(final Session.State state) {
            print("Session state: " + state);
        }
    });

文档好像写的不仔细。

有人知道如何在 GWT 中使用 Emite 语音聊天吗?或者给出一个非常简单的例子来演示如何使用 Emite in GWT

更新:我使用了emite-0.4.6.jar,除了看不到对话类之外,我没有遇到所有错误。好的,现在,我删除了与 Conversation 类相关的所有代码,然后编译应用程序并发现以下错误:

    Loading modules
   henry.naturalspeaking.NaturalSpeaking
      Loading inherited module 'henry.naturalspeaking.NaturalSpeaking'
         Loading inherited module 'com.calclab.emite.core.EmiteCore'
            Loading inherited module 'com.calclab.suco.Suco'
               Loading inherited module 'com.allen_sauer.gwt.log.gwt-log'
                  [ERROR] Unable to find 'com/allen_sauer/gwt/log/gwt-log.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
               [ERROR] Line 3: Unexpected exception while processing element 'inherits'
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:315)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefLoader.load(ModuleDefLoader.java:254)
    at com.google.gwt.dev.cfg.ModuleDefLoader.doLoadModule(ModuleDefLoader.java:197)
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromResources(ModuleDefLoader.java:157)
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(ModuleDefLoader.java:132)
    at com.google.gwt.dev.DevModeBase.loadModule(DevModeBase.java:1026)
    at com.google.gwt.dev.DevMode.loadModule(DevMode.java:570)
    at com.google.gwt.dev.DevMode.doStartup(DevMode.java:456)
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1094)
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844)
    at com.google.gwt.dev.DevMode.main(DevMode.java:322)
               [ERROR] Failure while parsing XML
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
    at com.google.gwt.dev.util.xml.DefaultSchema.onHandlerException(DefaultSchema.java:58)
    at com.google.gwt.dev.util.xml.Schema.onHandlerException(Schema.java:66)
    at com.google.gwt.dev.util.xml.Schema.onHandlerException(Schema.java:66)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:240)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefLoader.load(ModuleDefLoader.java:254)
    at com.google.gwt.dev.cfg.ModuleDefLoader.doLoadModule(ModuleDefLoader.java:197)
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromResources(ModuleDefLoader.java:157)
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(ModuleDefLoader.java:132)
    at com.google.gwt.dev.DevModeBase.loadModule(DevModeBase.java:1026)
    at com.google.gwt.dev.DevMode.loadModule(DevMode.java:570)
    at com.google.gwt.dev.DevMode.doStartup(DevMode.java:456)
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1094)
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844)
    at com.google.gwt.dev.DevMode.main(DevMode.java:322)
               [ERROR] Unexpected error while processing XML
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:371)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefLoader.load(ModuleDefLoader.java:254)
    at com.google.gwt.dev.cfg.ModuleDefLoader.doLoadModule(ModuleDefLoader.java:197)
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromResources(ModuleDefLoader.java:157)
    at com.google.gwt.dev.cfg.ModuleDefLoader.loadFromClassPath(ModuleDefLoader.java:132)
    at com.google.gwt.dev.DevModeBase.loadModule(DevModeBase.java:1026)
    at com.google.gwt.dev.DevMode.loadModule(DevMode.java:570)
    at com.google.gwt.dev.DevMode.doStartup(DevMode.java:456)
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1094)
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844)
    at com.google.gwt.dev.DevMode.main(DevMode.java:322)
            [ERROR] Line 5: Unexpected exception while processing element 'inherits'
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:336)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.parse(ReflectiveParser.java:347)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.access$200(ReflectiveParser.java:68)
    at com.google.gwt.dev.util.xml.ReflectiveParser.parse(ReflectiveParser.java:418)
    at com.google.gwt.dev.cfg.ModuleDefLoader.nestedLoad(ModuleDefLoader.java:333)
    at com.google.gwt.dev.cfg.ModuleDefSchema$BodySchema.__inherits_begin(ModuleDefSchema.java:497)
    at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.google.gwt.dev.util.xml.HandlerMethod.invokeBegin(HandlerMethod.java:230)
    at com.google.gwt.dev.util.xml.ReflectiveParser$Impl.startElement(ReflectiveParser.java:294)
    at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
    at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
    at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
    tSAXParser.startElement(Unknown Source)
    ......
[ERROR] shell failed in doStartup method

【问题讨论】:

  • 按原样,这太宽泛了。请缩小到具体问题(如果需要,您可以提出多个问题)。

标签: java gwt gwtp


【解决方案1】:

但是,上面的 2 个包没有 Conversation 类并且示例中没有 uri 方法。

  • Connection 位于名为 emite-0.5.0.jar 的 jar 中,请参阅 /com/calclab/emite/core/client/bosh/in the sources tree
  • uri() 方法是静态导入,请参见上面链接的源代码树 (import static com.calclab.emite.core.client.xmpp.stanzas.XmppURI.uri;)。

另外,下面的代码出现错误“Session 类型中的方法 onStateChanged(Listener) 不适用于参数 (new Listener(){})”

根据the sources,有一个onStateChanged(final Listener&lt;State&gt; listener),但在0.5 版中,签名是--如您的错误消息所述-- 不同。你必须使用onStateChanged(final Listener&lt;Session&gt; listener):

 session.onStateChanged(new Listener<Session>() {
    public void onEvent(final Session session) {
        print("Session state: " + session.getState());
    }
 });

我认为您应该使用 0.5 jar 中的示例礼物(请参阅“x”前缀文件夹),因此您不要使用与 0.5 版本不兼容的示例。

【讨论】:

  • 另请注意,链接“code.google.com/p/emite/wiki/BasicExample”上的 cmets 很有见地。
  • 有 COnnection 类但我们没有 Conversation 类,
  • 你能告诉我 Conversation 类(不是 Connection 类)在哪里吗?
  • 我收到此错误:加载继承的模块 'com.allen_sauer.gwt.log.gwt-log' [错误] 无法找到 'com/allen_sauer/gwt/log/gwt-log.gwt。 xml' 在你的类路径上;可能是拼写错误,或者您忘记包含源的类路径条目?
  • 我给了你所有你需要弄清楚的东西,chatmanager.open() 在 0.6 中返回一个 Chat 对象,见 code.google.com/p/emite/source/browse/trunk/emite/src/main/java/…
猜你喜欢
  • 2012-09-19
  • 1970-01-01
  • 2022-09-23
  • 2023-03-13
  • 2019-07-29
  • 1970-01-01
  • 2015-08-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多