Мне поручили проект, в котором мне нужно исправить пару FIXME, подключиться к локальному серверу и протестировать базовый графический интерфейс авторизации. Мы используем Maven и Dropwizard для создания небольшого макета серверного приложения. Профессор написал скелет и уверяет нас, что все, что нам нужно сделать, это обновить FIXME и запустить программу, а затем попытаться подключиться к http://localhost8080/gameusers. Любые изменения в файле, не связанные с FIXME, теряют очки. Профессор предоставил эту документацию, чтобы помочь программе работать:
https://howtodoinjava.com/dropwizard/cl ... -examples/
https://howtodoinjava.com/dropwizard/dr ... y-example/
И ссылка на файлы проекта github:https://github.com/EdwardDEthridge/CS23 ... roject.git
И файл pom.xml"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
com.gamingroom
gameauth
0.0.1-SNAPSHOT
jar
GameAuth
UTF-8
UTF-8
2.0.18
com.gamingroom.gameauth.GameAuthApplication
io.dropwizard
dropwizard-dependencies
${dropwizard.version}
pom
import
io.dropwizard
dropwizard-auth
${dropwizard.version}
io.dropwizard
dropwizard-client
${dropwizard.version}
io.dropwizard
dropwizard-core
com.fasterxml.jackson.core
jackson-annotations
jakarta.validation
jakarta.validation-api
org.hibernate.validator
hibernate-validator
maven-shade-plugin
3.2.4
true
${mainClass}
*:*
META-INF/*.SF
META-INF/*.DSA
META-INF/*.RSA
package
shade
maven-jar-plugin
3.2.0
true
${mainClass}
maven-compiler-plugin
3.8.1
1.8
1.8
maven-source-plugin
3.2.1
attach-sources
jar
maven-javadoc-plugin
3.2.0
attach-javadocs
jar
maven-project-info-reports-plugin
3.1.0
false
false
maven-javadoc-plugin
3.2.0
java11+
[11,)
true
На данный момент я исправил эти исправления:
// FIXME: Add annotation for GET and Path for gameusers
@GET
@Path("/gameusers")
// FIXME: Add path annotation for gameusers
@Path("/gameusers")
@Produces(MediaType.APPLICATION_JSON)
// FIXME: Add RolesAllowed annotation for ADMIN based on BasicAuth Security Example
@RolesAllowed("ADMIN")
@POST
// FIXME: Add RolesAllowed annotation for USER based on BasicAuth Security Example
@RolesAllowed("USER")
@GET
@Path("/{id}")
// FIXME: register GameUserRESTController (based on BasicAuth Security Example)
e.jersey().register(GameUserRESTController.class);
// FIXME: Finish the authorize method based on BasicAuth Security Example for new GameUser
return Optional.of(new GameUser(credentials.getUsername(), VALID_USERS.get(credentials.getUsername())));
// FIXME: register GameUserRESTController (based on BasicAuth Security Example)
e.jersey().register(GameUserRESTController.class);
и они не выдают никаких ошибок, однако я не могу подключиться к своему серверу и получаю ошибку HTTP 500. Кроме того, есть один FIXME, который я не могу исправить:
// FIXME: Create io.dropwizard.client.JerseyClientBuilder instance and give it io.dropwizard.setup.Environment reference (based on BasicAuth Security Example)
У меня возникли проблемы с подключением к моему серверу с помощью Chrome, я постоянно получаю ошибку HTTP 500 и не знаю, что ее вызывает. Я не получаю никаких ошибок от eclipse, пока не запущу программу и не попытаюсь подключиться, а затем в консоли появится множество ошибок (плюс 57 тыс. строк), когда браузер возвращает ошибку HTTP 500. Это сводка ошибок, с которыми я столкнулся.:
MultiException stack 1 of 2
java.lang.NoSuchMethodException: Could not find a suitable constructor in com.gamingroom.gameauth.controller.GameUserRESTController class.
MultiException stack 2 of 2
java.lang.IllegalArgumentException: Errors were discovered while reifying SystemDescriptor(
implementation=com.gamingroom.gameauth.controller.GameUserRESTController
contracts={com.gamingroom.gameauth.controller.GameUserRESTController}
scope=org.glassfish.jersey.process.internal.RequestScoped
qualifiers={}
descriptorType=CLASS
descriptorVisibility=NORMAL
metadata=
rank=0
loader=null
proxiable=null
proxyForSameScope=null
analysisName=null
id=223
locatorId=0
identityHashCode=261126833
reified=false)
WARNING: HK2 service reification failed for [com.gamingroom.gameauth.controller.GameUserRESTController] with an exception:
MultiException stack 1 of 2
java.lang.NoSuchMethodException: Could not find a suitable constructor in com.gamingroom.gameauth.controller.GameUserRESTController class.
MultiException stack 2 of 2
java.lang.IllegalArgumentException: Errors were discovered while reifying SystemDescriptor(
implementation=com.gamingroom.gameauth.controller.GameUserRESTController
contracts={com.gamingroom.gameauth.controller.GameUserRESTController}
scope=org.glassfish.jersey.process.internal.RequestScoped
qualifiers={}
descriptorType=CLASS
descriptorVisibility=NORMAL
metadata=
rank=0
loader=null
proxiable=null
proxyForSameScope=null
analysisName=null
id=223
locatorId=0
identityHashCode=261126833
reified=false)
Подробнее здесь: https://stackoverflow.com/questions/792 ... en-project
Невозможно подключиться к локальному серверу для проекта Maven. ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Невозможно подключиться к локальному серверу MySQL через сокет /tmp/mysql.sock.
Anonymous » » в форуме Python - 0 Ответы
- 28 Просмотры
-
Последнее сообщение Anonymous
-