Графическое программное обеспечение neo4j-php-client | Не удается поймать Neo4jException
Я использую Postgresql + Neo4j для своего проекта. Мне нужно откатить запросы postgres, если запрос neo4j не удался. Итак, мне нужно поймать Neo4jException в моем коде. Но пока не могу. Спасибо за помощь.
require_once('pgconnect.php');
try{
$conn->beginTransaction();
//some pgsql code
$conn->commit();
require_once('neoconnect.php');
$result = $client->run("a query");
$conn = null;
}
catch(PDOException $e){
require_once('pgrollback.php');
}
это мой рабочий код. Но, как вы видите, у меня нет блока catch, чтобы поймать исключение neo4j. Я добавил это, но не повезло. также пытался с Neo4jExceptionInterface в качестве класса исключения (отчаянные времена). (Кстати, я использую неправильно набранный запрос, чтобы получить исключение)
catch(Neo4jException $ex){
//done smth
}
Также пытался сделать это без удачи тоже.
$client->run("a query") or throw new Neo4jException();
1 ответ
Я только что проверил, и у меня нет проблем с обнаружением исключения, можете ли вы предоставить больше кода, что в neoconnect.php
например?
Это мой тест:
$client = ClientBuilder::create()
->addConnection('default', 'http://localhost:7474')
->build();
$query = 'INVALID QUERY';
try {
$result = $client->run($query);
} catch (\GraphAware\Neo4j\Client\Exception\Neo4jException $e) {
echo sprintf('Catched exception, message is "%s"', $e->getMessage());
}
-
ikwattro@graphaware ~/d/g/p/neo4j-php-client> php test.php
Catched exception, message is "Invalid input 'I': expected <init> (line 1, column 1 (offset: 0))
"INVALID QUERY"
^"⏎