Я настроил сервер и клиент db4o. Мои клиентские звонки не работают.
Что меня озадачивает, так это то, что примеры db4o показывают, как клиент может закрыть сервер, а не то, как получить и сохранить данные. Смотри: http://community.versant.com/Documentation/Reference/db4o-7.12/java/reference/Content/client-server/networked/simple_db4o_server.htm
Если я запускаю сервер db4o и запускаю netstat, я вижу, что порт открыт. А на клиенте я могу делать такие вещи:
Debug.WriteLine (.. Db.Ext () IsClosed () ToString ());
И это возвращает Ложь, что хорошо.
Но когда я пытаюсь получить или сохранить данные, это не работает. При сохранении данных, похоже, работает, но я не вижу данных в БД. При попытке получить объект, я получаю эту ошибку:
Db4objects.Db4o.Ext.Db4oException: исключение типа 'Db4objects.Db4o.Ext.Db4oException' было сгенерировано. ---> System.
Вот клиентские вызовы для сохранения, затем получить:
Server server = new Server() { Name = "AppServerFoo" };
IObjectContainer db = GetDatabase();
db.Store(server);
db.Close();
Вот единственная строка в методе GetDatabase ():
return Db4oClientServer.OpenClient(Db4oClientServer.NewClientConfiguration(), "DellXps", 8484, "user", "password");
А вот звонок из БД:
IObjectContainer db = GetDatabase();
Server testServer = db.Query<Server>(server => server.Name == "AppServerFoo").FirstOrDefault();
db.Close();
Чего мне не хватает?