Java "Принтер не принимает работу" старые принтеры Brother - PullRequest
2 голосов
/ 27 августа 2010

У меня есть клиент, который имеет проблемы с печатью из приложений JAVA, используя старые принтеры Brother.Исключение, которое он получает, - «Принтер не принимает задания».

Другие приложения (не Java-приложения) могут печатать на этих принтерах.Он переключился на новый принтер (также Brother), не меняя драйвер, и тогда он работал.

Идея состоит в том, что он не может заменить все принтеры, а также он не хочет переустанавливать все их, так как онимеет сеть из сотен компьютеров и принтеров.

Я читал на разных форумах, что есть ошибка в Java версии 1.5 и 1.6, но это приложение работает только с Java 1.5 или выше ... поэтому он не можетпереключитесь на java 1.4 (с java 1.4 печать работала).

Не могли бы вы как-нибудь помочь мне и дать какое-нибудь возможное решение этой проблемы?

Ответы [ 2 ]

2 голосов
/ 17 декабря 2010

Обнаружен обходной путь с использованием манипуляции с байтовым кодом в http://copy -con.blogspot.com / 2009/12 / printer-is-not-acceptpting-job.html

1 голос
/ 27 августа 2010

Похоже, это эта ошибка . К сожалению, он отмечен как низкий приоритет, и, поскольку никто не удосужился проголосовать за него, его откладывают.

Эта ветка форума дает полезный фон (ответ № 11) и обходной путь (ответ № 9), который игнорирует состояние принтера при попытке напечатать файл.

Если вы хотите, чтобы эта ошибка была исправлена ​​в Java 7, еще есть время отправить патч .

EDIT

Я знал, что кто-то оспаривал обходной путь, но я не мог решить проблему. Как бы то ни было, должна быть возможность разработать лучшую версию, используя тот же подход или другой. Если создание подклассов и использование отражения для настройки частного состояния не работает, вы можете скачать исходный код Java 6, исправить ошибку и перестроить.

Я уверен, что было бы неплохо, если бы у кого-то было для вас решение, но давайте будем реалистичны. Это похоже на проблему, которая затрагивает очень мало людей. ИМО, ваши лучшие шансы на успех:

  • самопомощь,
  • оплата контракта на поддержку Oracle или
  • найм независимого технического эксперта.

Из них самопомощь дает наилучшие шансы дать вам быстрое решение ... при условии, что у вас есть люди, обладающие навыками для выполнения такой работы на месте.

...