Код: Выделить всё
public class Vehicle implements Serializable{
private static final long serialVersionUID = -8169481181178317205L;
private final String id;
private final LocalDate depositDate;
private final double price;
private final ArrayList scores = new ArrayList();
private final ArrayList comments = new ArrayList();
private Optional renter = Optional.empty();
private int rentalNumber = 0;
}
Как избавиться от этих предупреждений? Является ли это обязательством?
Первое решение, которое я реализовал, заключалось в преобразовании списка в массив, но есть ли что-нибудь еще?
РЕДАКТИРОВАТЬ 5: Проблема заключается в том, что нужно добавить параметр в метод, который я хочу использовать для веб-службы. Я попытался добавить такой метод:
Код: Выделить всё
public StatePayment lol(int lol){
return StatePayment.DENIED;
}
EDIT4: я создал поддельный метод только для того, чтобы проверить, в чем проблема. Кажется, что когда у меня был параметр в сигнатуре метода, у меня возникла прецедентная ошибка.
Код: Выделить всё
//Not working code
public StatePayment lol(Buyer buyer){
return StatePayment.DENIED;
}
//Working code
public StatePayment lol(Buyer buyer){
return StatePayment.DENIED;
}
РЕДАКТИРОВАТЬ 3: Когда я хочу создать веб-сервис с помощью "new->WebService-> Выбор методов.
У меня следующая ошибка:
IWAB0398E Ошибка при создании WSDL из Java: >java .lang.IllegalStateException: ошибка при поиске имен параметров в >байт-коде: неожиданные байты в файле
Это проблема сериализации?
Ошибка возникает, когда я выбираю этот метод:
Код: Выделить всё
public int proceedToPayment(Buyer buyer) {
//Calcul du prix total du shoppingCart
long totalPrice = 0;
for(Vehicle v : buyer.getShoppingCart()) {
totalPrice += v.getPrice();
}
Bank buyerBank = buyer.getBank();
//Convertir totalPrice en euros vers la monnaie du Buyer.
if(buyerBank.bankTransaction(totalPrice, buyer) == StatePayment.DENIED) {
return 0;
}
removeShoppingCartFromBDD(buyer.getShoppingCart());
return 1;
}
РЕДАКТИРОВАТЬ 1: предупреждающее сообщение
Класс обслуживания «MlvDataBaseImpl» не соответствует одному или нескольким
требованиям спецификации JAX-RPC 1.1 и не может быть развернут или
функционировать правильно.
Метод «exportObject» в классе обслуживания «MlvDataBaseImpl»
перегружен. Перегруженные методы разрешены главой 5.5.5 спецификации
JAX-RPC 1.1, однако некоторые инструменты, совместимые с JAX-RPC 1.1,
могут не разрешать перегруженные методы или могут генерировать WSDL с перегруженными
операциями. в отличие от правила R2304 базового профиля WS-I.
Тип значения «MlvDataBase», используемый через класс обслуживания
«MlvDataBaseImpl», не имеет общедоступного конструктора по умолчанию. Глава
5.4 спецификации JAX-RPC 1.1 требует, чтобы тип значения имел общедоступный конструктор по умолчанию, в противном случае механизм веб-службы, совместимый с JAX-RPC 1.1, может оказаться неспособным создать экземпляр значениятип во время десериализации.
Тип значения «Renter», используемый через класс службы «MlvDataBaseImpl»
, не имеет общедоступного конструктора по умолчанию. Глава 5.4 спецификации JAX-RPC
1.1 требует, чтобы тип значения имел общедоступный конструктор по умолчанию, в противном случае механизм веб-сервиса, совместимый с JAX-RPC 1.1, может
не иметь возможности создать экземпляр типа значения во время
десериализация.
Тип значения «Транспортное средство», используемый через класс обслуживания
"MlvDataBaseImpl", не имеет общедоступного конструктора по умолчанию. Глава
5.4 спецификации JAX-RPC 1.1 требует, чтобы тип значения имел общедоступный конструктор по умолчанию, в противном случае механизм веб-службы, совместимый с JAX-RPC 1.1, может оказаться неспособным создать экземпляр значения
тип во время десериализации.
Тип значения «Покупатель», используемый через класс обслуживания «MlvDataBaseImpl»
не имеет общедоступного конструктора по умолчанию. Глава 5.4 спецификации JAX-RPC
1.1 требует, чтобы тип значения имел общедоступный конструктор по умолчанию, в противном случае механизм веб-сервиса, совместимый с JAX-RPC 1.1, может
не иметь возможности создать экземпляр типа значения. во время
десериализации.
Метод "registerVehicle" в классе обслуживания "MlvDataBaseImpl"
использует тип данных "java.time.LocalDate", который не является поддерживается спецификацией
JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "getRentableVehicles" в классе службы
"MlvDataBaseImpl" использует тип данных " java.util.List", который
не поддерживается спецификацией JAX-RPC. Экземпляры этого типа могут
некорректно сериализоваться или десериализоваться. Это может привести к потере данных или полному сбою
веб-сервиса.
Метод "clone" в классе службы "MlvDataBaseImpl" использует
тип данных " java.lang.Object", который не поддерживается спецификацией JAX-RPC
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Метод "exportObject" класса службы "MlvDataBaseImpl"
использует тип данных " java.rmi.server.RemoteStub", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться
или десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "exportObject" класса службы "MlvDataBaseImpl"
использует тип данных " java.rmi.Remote", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "exportObject" класса службы "MlvDataBaseImpl"
использует тип данных " java.rmi.Remote", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "exportObject" в классе службы "MlvDataBaseImpl"
использует тип данных " java.rmi.Remote", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "exportObject" класса службы "MlvDataBaseImpl"
использует тип данных " java.rmi.Remote", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "exportObject" класса службы "MlvDataBaseImpl"
использует тип данных " java.rmi.Remote", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "exportObject" в классе службы "MlvDataBaseImpl"
использует тип данных " java.rmi.server.RMIClientSocketFactory", который
не поддерживается спецификацией JAX-RPC. Экземпляры этого типа могут
некорректно сериализоваться или десериализоваться. Это может привести к потере данных или полному
сбою веб-службы.
Метод "exportObject" в классе службы "MlvDataBaseImpl"
использует тип данных " java.rmi.server.RMIServerSocketFactory", который
не поддерживается спецификацией JAX-RPC. Экземпляры этого типа могут
некорректно сериализоваться или десериализоваться. Это может привести к потере данных или полному
сбою веб-службы.
Метод unexportObject в классе службы «MlvDataBaseImpl»
использует тип данных " java.rmi.Remote", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "setLog" в классе службы "MlvDataBaseImpl" использует
тип данных " java.io.OutputStream", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод getLog в классе службы "MlvDataBaseImpl" использует
тип данных " java.io.PrintStream", который не поддерживается спецификацией JAX-RPC
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может
привести к потере данных или полному сбою веб-службы.
Метод "getRef" в классе службы "MlvDataBaseImpl" использует
тип данных " java.rmi.server.RemoteRef", который не поддерживается
спецификацией JAX-RPC. Экземпляры этого типа могут неправильно сериализоваться или
десериализоваться. Это может привести к потере данных или полному сбою веб-
службы.
Метод "toStub" в классе службы "MlvDataBaseImpl" использует
тип данных " java.rmi.Remote", который не поддерживается спецификацией JAX-RPC
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Метод "toStub" в классе службы "MlvDataBaseImpl" использует
тип данных " java.rmi.Remote", который не поддерживается спецификацией JAX-RPC
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Метод "equals" в классе службы "MlvDataBaseImpl" использует
тип данных " java.lang.Object", который не поддерживается спецификацией JAX-RPC
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Класс службы "MlvDataBaseImpl" не имеет общедоступного
конструктора по умолчанию. Глава 10.1 спецификации JAX-RPC 1.1 требует, чтобы
класс обслуживания имел общедоступный конструктор по умолчанию, в противном случае механизм веб-сервиса,
совместимый с JAX-RPC 1.1, может оказаться неспособным создать
экземпляр
экземпляра класс обслуживания для обработки входящего сообщения запроса.
Поле или свойство "declaringClass" для типа значения
"java.lang.Enum", используемое через класс обслуживания "MlvDataBaseImpl" " имеет тип данных "java.lang.Class", который не поддерживается спецификацией JAX-RPC 1.1
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Поле или свойство «depositDate» типа значения «Транспортное средство», используемое
через службу Класс "MlvDataBaseImpl" имеет тип данных
"java.time.LocalDate", который не поддерживается спецификацией JAX-RPC 1.1
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Поле или свойство «комментирует» тип значения «Транспортное средство», используемое
через службу. Класс "MlvDataBaseImpl" имеет тип данных
"java.util.List", который не поддерживается спецификацией JAX-RPC 1.1
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может привести к потере данных или полному сбою веб-службы.
Поле или свойству присваивается значение типа значения «Транспортное средство», используемого через
службу. класс "MlvDataBaseImpl" имеет тип данных "java.util.List",
который не поддерживается спецификацией JAX-RPC 1.1. Экземпляры
типа могут сериализоваться или десериализоваться неправильно. Это может привести к потере данных или
полному сбою веб-службы.
Поле или свойство «declaringClass» в типе значения
«java.lang.Enum» используемый через класс обслуживания "MlvDataBaseImpl", имеет тип данных "java.lang.Class", который не поддерживается спецификацией JAX-RPC 1.1
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может
привести к потере данных или полному сбою веб-службы.
Поле или свойство «shoppingCart» типа значения «Покупатель», используемое
через службу Класс "MlvDataBaseImpl" имеет тип данных
"java.util.ArrayList", который не поддерживается спецификацией JAX-RPC 1.1
. Экземпляры этого типа могут не сериализоваться или десериализоваться
правильно. Это может
привести к потере данных или полному отказу веб-службы.
Подробнее здесь: https://stackoverflow.com/questions/404 ... list-field