2010-05-31 3 views
2

на противоположный каждый раз, когда я читал о мете тегов, атрибут, где в этом порядке для описания:Java: атрибуты порядка в .jsp получения

<meta name="description" content="..." /> 

Первого имени, затем содержание. Это также похоже на документацию Google Webmaster. По сути, это везде.

Сейчас в .jsp (в XML нотации) У меня есть следующее:

<meta name="description" content="${metadesc}"/> 

Так это имя, а затем содержание.

Однако на сгенерированной странице, я получаю это:

<meta content="...(200 chars or so here making it a very long line)..." name="description"/> 

Каким-то атрибуты были на противоположный. Поскольку содержание соответствует официальным рекомендациям W3C и Google, содержание составляет чуть менее 200 символов, что создает большую боль, чтобы «визуально проверить», что атрибут имени правильно там (мне нужно прокрутить).

Во всяком случае ...

Почему это атрибут не появляется в порядке, определенном в .jsp?

Могу ли я заставить их появляться в том же порядке, как я их написал в своем .jsp?

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

EDIT вау, просто вау ... Если я инвертировать атрибуты в моей .jsp (то есть, записывая их в «неправильном» порядке), то они появляются, как я хочу, чтобы они появились в созданном веб стр. (Tomcat 6.0.26 btw)

+0

Другими словами, вы на самом деле с помощью JSPX, не JSP? – BalusC

+0

@BalusC: yup, это «JSP Document»/JSPX, но расширение файла на самом деле * .jsp *, а не * .jspx * (что, я думаю, не против спецификации). – NoozNooz42

ответ

1

Атрибут атрибутов - это иностранная концепция в XML. Либо что-то имеет атрибут, либо нет, нет ничего в XML, который утверждает, что один атрибут должен (или должен) прийти перед другим.

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

Элементы действительно позволяют заказать в некоторой степени, поскольку вы можете указать порядок вложенных элементов в DTD и XSD.

+0

, но вы не отвечаете на вопрос ... Я заявил, что могу подумать о множестве очень творческих способов создания полностью корректного XML, который все равно будет нарушать пользователей. Разве вы не думаете, что разумное ожидание появления атрибутов в том порядке, в котором они были определены? Что делать, если каждый раз, когда вы сохраняли XML-документ из текстового редактора, ваш текстовый редактор должен инвертировать атрибуты? Не могли бы вы подумать о своей аналогии с цветом волос, или вы, может быть, думаете, что что-то странное происходит? Честно? – NoozNooz42

+0

OK +1 и я принимаю ваш ответ для BalusC, не согласен с вами, и у него достаточно очков :) (+1 к BalusC тоже) Я все еще немного удивлен, но хорошо ... – NoozNooz42

+0

Я понимаю, что это может не быть кажется ответом на вопрос, но когда стандарт не поддерживает упорядочение атрибутов, не имеет большого смысла говорить об атрибутах вне порядка, даже если бы имели место случаи, когда порядок атрибутов имел бы смысл. Разумеется, атрибуты в порядке помогут вам в значительной степени (из-за вашей логики), но базовая технология просто не гарантирует порядок атрибутов. При создании решения вы не можете использовать инструменты для выполнения спецификации, даже если это не имеет смысла в каком-то большем контексте. –

1

К сожалению, это характер XML. Я никогда не использовал JSPX, но могу себе представить, что он просто анализируется каким-то инструментом XML, хранится в некоторой древовидной структуре в памяти и затем отображается в HTML. Эти атрибуты могут храниться в неупорядоченной структуре данных. Я не думаю, что вы будете иметь контроль над этим. Я лично не стал бы так беспокоиться об этом. JSPX не единственный в этом, многие другие технологии на основе XML/шаблонов могут вести себя одинаково. Единственный, кто будет беспокоиться о сгенерированном выходе HTML, - это пуристические веб-разработчики, и я не думаю, что это основная аудитория данного сайта, не так ли?;)

Это абсолютно не имеет значения, webbots веб-браузером, SEO и т.д.

Смежные вопросы