вот моя очень странная проблема:
Я написал ws, который проверяет подписанную почту с помощью bouncycastle API. Когда я тестирую метод вне среды axis2, все работает нормально. Как только я развернул ws в tomcat, все пошло не так. У меня есть странное исключение, которое я локализовал в API bc, в методе readObject (), когда API пытается преобразовать сообщение MIME в структуру asn1.
Вот исключение:
Caused by: org.bouncycastle.cms.CMSException: IOException reading content.
at org.bouncycastle.cms.CMSUtils.readContentInfo(Unknown Source)
at org.bouncycastle.cms.CMSUtils.readContentInfo(Unknown Source)
at org.bouncycastle.cms.CMSSignedData.<init>(Unknown Source)
at org.bouncycastle.mail.smime.SMIMESigned.<init>(Unknown Source)
... 32 more
Caused by: java.io.EOFException: EOF found when length expected
at org.bouncycastle.asn1.ASN1InputStream.readLength(Unknown Source)
at org.bouncycastle.asn1.ASN1InputStream.readLength(Unknown Source)
at org.bouncycastle.asn1.ASN1InputStream.readObject(Unknown Source
Исключение возникает, когда я вызываю конструктор SignedMailValidator.
private static SignBean verifySignedMail(MimeMessage msg, PKIXParameters param, Log log)
throws SarvaraException
{
String errorSubject = "";
String errorDetails = "";
SignBean signReturn = new SignBean();
// set locale for the output
Locale loc = Locale.FRENCH;
// Locale loc = Locale.GERMAN;
// validate signatures
SignedMailValidator validator;
try
{
validator = new SignedMailValidator(msg, param);
...
Я не думаю, что проблема связана с написанным мною кодом, потому что все в порядке. Я действительно застрял, и я ничего не нашел об этом нигде. Кстати, конструктор MimeMessage принимает свойства Sytem в параметре, и, чтобы убедиться, что это не главное, я поместил абсолютно одинаковые свойства System в обе среды (автономная программа и axis2 ws). Любые предложения будут приветствоваться. Спасибо вам всем.