Java “Принтер не принимает задания” старые принтеры Brother

StackOverflow https://stackoverflow.com/questions/3584106

  •  01-10-2019
  •  | 
  •  

Вопрос

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

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

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

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

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

Это было полезно?

Решение

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

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

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

Редактировать

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

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

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

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

Другие советы

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top