Clojure에 게시 Google 지원 그룹이 나를 위해 작동하지 않는 것 같습니다. 그래서 여기에서 질문하려고 시도합니다.Java의 Datomic 메모리 내 쿼리는 결과를 반환하지 않습니다.
다음과 같이 약간 수정 된 GettingStarted.java (clojure distro에서)를 스프링 구성 테스트로 실행하여 Datomic을 내 앱에 통합하고 아래의 첫 번째 Peer.q 호출에서 결과가 나타나지 않는지 확인하십시오. (동일한 콘솔 호출이 150 개의 레코드를 반환하는 반면). 나는 여기서 무엇을 잘못하고있는거야, 제발 도와 줘?
@ContextConfiguration(classes={GettingStartedConfig.class}, loader=AnnotationConfigContextLoader.class)
@RunWith(SpringJUnit4ClassRunner.class)
public class GettingStartedTest {
private final Logger log = LoggerFactory.getLogger(getClass());
private static final Scanner scanner = new Scanner(System.in);
private String uri = "datomic:mem://seattle";
@Autowired
private Reader schema;
@Autowired
private Reader seed0;
private void pause() {
if (System.getProperty("NOPAUSE") == null) {
log.info("\nPress enter to continue...");
scanner.nextLine();
}
}
@SuppressWarnings("rawtypes")
@Test
public void test() throws Exception {
log.info("Creating and connecting to database...at {}", uri +"\n\n");
Peer.createDatabase(uri);
Connection conn = Peer.connect(uri);
pause();
log.info("Parsing schema dtm file and running transaction...\n\n");
log.info("schema: "+schema);
List schema_tx = (List) Util.readAll(schema).get(0);
schema.close();
Object txResult = conn.transact(schema_tx).get();
log.info("result of schema transaction: "+txResult);
pause();
log.info("Parsing seed data dtm file and running transaction...\n\n");
List data_tx = (List) Util.readAll(seed0).get(0);
seed0.close();
txResult = conn.transact(data_tx).get();
pause();
log.info("Finding all communities, counting results...\n\n");
Collection results = Peer.q("[:find ?c :where [?c :community/name]]", conn.db());
log.info("size of the result = {} " , results.size() + "\n\n");
pause();
가
[주] INFO를 ................................................ COM .excelsiorsoft.daedalus.persistence.datomic.GettingStartedTest - 커뮤니티 모두, 계산 결과를 찾기 ...
[주] INFO com.excelsiorsoft.daedalus.persistence.datomic.GettingStartedTest - 결과 = 0
의 크기
미리 감사드립니다.
그런 포럼은 실제로 존재하며 여기에 게시하기 전에 거기에 물어 보는 시도를했지만 거기에는 내 문의가 받아 들여지지 않습니다. –
그럴 경우 행운을 기원합니다. :) –
autowired가 null 대신 그 안에 뭔가가 있는지 확인 했습니까? 또한 autowired가 뭔가를 가지고 있다면 ... 유효합니까? 시드를 읽은 후에 제대로 읽으면 값을 반환해야합니다. – pompanoSlayer