Alljoyn Java проблема с JNI

Я пытаюсь следовать основному учебнику по alljoyn для Java, чтобы сделать мой первый сервис и клиент alljoyn. К сожалению, каждый раз, когда я запускаю сервис, я получаю следующую ошибку.

У кого-нибудь есть идея избавиться от этого?

    package test;

import org.alljoyn.bus.AboutObj;
import org.alljoyn.bus.BusAttachment;
import org.alljoyn.bus.BusException;
import org.alljoyn.bus.BusListener;
import org.alljoyn.bus.BusObject;
import org.alljoyn.bus.Mutable;
import org.alljoyn.bus.SessionOpts;
import org.alljoyn.bus.SessionPortListener;
import org.alljoyn.bus.Status;

public class MyServiceObject {
    static {
        System.loadLibrary("alljoyn_java");
    }

    private static final short CONTACT_PORT=42;

    static boolean sessionEstablished = false;
    static int sessionId;

    public static class SampleService implements MyInterface, BusObject {

        @Override
        public void MyMethod(String inStr) throws BusException {
            // TODO Auto-generated method stub

        }

        @Override
        public void MySignal(String inStr) throws BusException {
            // TODO Auto-generated method stub

        }

        @Override
        public String GetMyProperty() throws BusException {
            // TODO Auto-generated method stub
            return null;
        }

        @Override
        public void SetMyProperty(String myProperty) throws BusException {
            // TODO Auto-generated method stub

        }
    }

    public static void main(String[] args) {

        BusAttachment mBus;
        mBus = new BusAttachment("AppName", BusAttachment.RemoteMessage.Receive);

        Status status;

        SampleService mySampleService = new SampleService();

        status = mBus.registerBusObject(mySampleService, "/example/path");
        if (status != Status.OK) {
            return;
        }
        System.out.println("BusAttachment.registerBusObject successful");

        mBus.registerBusListener(new BusListener());

        status = mBus.connect();
        if (status != Status.OK) {

            return;
        }
        System.out.println("BusAttachment.connect successful on " + System.getProperty("org.alljoyn.bus.address"));

        Mutable.ShortValue contactPort = new Mutable.ShortValue(CONTACT_PORT);

        SessionOpts sessionOpts = new SessionOpts();
        sessionOpts.traffic = SessionOpts.TRAFFIC_MESSAGES;
        sessionOpts.isMultipoint = false;
        sessionOpts.proximity = SessionOpts.PROXIMITY_ANY;
        sessionOpts.transports = SessionOpts.TRANSPORT_ANY;

        status = mBus.bindSessionPort(contactPort, sessionOpts,
                new SessionPortListener() {
            public boolean acceptSessionJoiner(short sessionPort, String joiner, SessionOpts sessionOpts) {
                System.out.println("SessionPortListener.acceptSessionJoiner called");
                if (sessionPort == CONTACT_PORT) {
                    return true;
                } else {
                    return false;
                }
            }
            public void sessionJoined(short sessionPort, int id, String joiner) {
                System.out.println(String.format("SessionPortListener.sessionJoined(%d, %d, %s)", sessionPort, id, joiner));
                sessionId = id;
                sessionEstablished = true;
            }
        });
        if (status != Status.OK) {
            return;
        }

        AboutObj aboutObj = new AboutObj(mBus);
        //status = aboutObj.announce(contactPort.value, new MyAboutData());
        if (status != Status.OK) {
            System.out.println("Announce failed " + status.toString());
            return;
        }
        System.out.println("Announce called announcing SessionPort: " + contactPort.value);

        while (!sessionEstablished) {
            try {
                Thread.sleep(10);
            } catch (InterruptedException e) {
                System.out.println("Thread Exception caught");
                e.printStackTrace();
            }
        }
        System.out.println("BusAttachment session established");

        while (true) {
            try {
                Thread.sleep(10000);
            } catch (InterruptedException e) {
                System.out.println("Thread Exception caught");
                e.printStackTrace();
            }
        }
    }
}

0,560 ****** ОШИБКА ALLJOYN_JAVA external .../jni/alljoyn_java.cc:12028 | org.alljoyn.bus.AnnotationBusException: не может определить подпись для нуля

0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.Signature.typeSig (Signature.java:121)
0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.InterfaceDescription.getPropertySig (InterfaceDescription.java:530)
0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.InterfaceDescription.getProperties (InterfaceDescription.java:302)
0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.InterfaceDescription.create (InterfaceDescription.java:163)
0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.InterfaceDescription.create (InterfaceDescription.java:423)
0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.BusAttachment.registerBusObject (BusAttachment.java:1357)
0,560 ****** ОШИБКА ALLJOYN_JAVA external... / jni / alljoyn_java.cc: 12028 | в org.alljoyn.bus.BusAttachment.registerBusObject (BusAttachment.java:1287)
0,560 ****** ОШИБКА ALLJOYN_JAVA external .../jni/alljoyn_java.cc:12028 | at test.MyServiceObject.main(MyServiceObject.java:74)

0 ответов

Другие вопросы по тегам