ContextConfiguration a foldery...

0

Cześć,
Serio siedzę nad tym od ponad godziny i nic..
Od razu przejdę do najważniejszego.
Mam aplikację gdzie wykorzystuję Springa. Tzn dostałem w spadku, nie pisałem od zera.
Otóż sprawa wygląda tak, że projekt wygląda tak:

WEB-INF/src/main/java/my/application/now/Spring.class
WEB-INF/src/test/java/my/application/now/SpringTest.class

Chodzi o to, że w folderze test, mam folder resources a tam plik, który jest konfiguracją w XML'u. Ścieżka:
WEB-INF/src/test/java/resources/context.xml

W pliku SpringTest.class odpalam go tak:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:context"})

Wtedy w JavaTest IntelliJ dodaje "listek" i ogólnie informacja, że konfiguracja jest okej.

Teraz potrzebuję zrobić identyczną konfigurację, tyle,że w Spring.class / paczce "main".
Postanowiłem więc przekopiować plik context.xml do:
WEB-INF/src/main/java/resources/

Potem wrzuciłem identyczne dwie linijki nad klasę Spring.class.
Ścieżka pomalowała się na zielono więc jest okej, znalazło plik ale IntelliJ nie dodał informacji, że klasa jest opatrzona Springiem. Pomyślałem, że może chodzi o to, że ta sama nazwa ale nie, nic to nie zmienia. Plik znajduje, mogę nawet do niego sie przenieść z tej linijki ale to nic nie daje.

Gdziekolwiek bym nie przeniósł pliku SpringTest.class (byle, że w folderze "test") to wszystko działa, wszędzie Spring się ładuje, a jak tylko przeniosę ten plik do folderu "main" to już gubi Springa i nic nie mogę zaradzić. Czy muszę dodać w jakiś sposób folder main do konfiguracji? Wygląda tak jakby tylko w folderze "main" nie mógł się odnaleźć. Wydaje się, że to prościzna a ja siedzę i tracę czas. Patrzyłem na podawanie ścieżki ale to nic nie zmienia bo IntelliJ ją znajduje odpowiednio, przynajmniej tak mi się wydaje.

Jeśli mógłby ktoś podpowiedzieć, brakuje mi zerknięcia czyimś okiem na to o czym mówie.

0

Nie bardzo rozumiem co to u ciebie jest to Spring.class. Rozumiesz chyba że @RunWith(SpringJUnit4ClassRunner.class) to jest adnotacja JUnita i działa TYLKO W TESTACH? W związku z tym nie bardzo widzę co ty chcesz osiągnąć pakując te adnotacje do nie-testowej klasy.

0

Tak, tego nie dopatrzyłem. Chodzi tylko o linijkę ContextConfiguration. Mój błąd, wybacz.
Wygląda to tak, jakby Spring był ustalony na folder "test" a nie na "main" dlatego też pytam czy jest coś co może mi blokować widoczność Springa na dany folder?

0

Chodzi tylko o linijkę ContextConfiguration

Ale to bez znaczenia. OBIE te linijki są TYLKO DO TESTÓW. Jeśli ty chcesz uruchomić kontekst Springa do normalnego działania w aplikacji to robi sie to zupełnie inaczej. Nie kopiuj bezmyślnie kodu tylko sprawdź najpierw w dokumentacji co to w ogóle jest.
Co ty chcesz osiągnąć? Bo ja nadal nie rozumiem.

0

Rozumiem, dopiero po dokładnym przeczytaniu dokumentacji zrozumiałem swoją głupotę.
Wystarczyło uruchomić konfigurację poprzez ApplicationContext...

1 użytkowników online, w tym zalogowanych: 0, gości: 1