Tôi đang mất khoảng trống đáng kể từ trang wiki tôi đang phân tích cú pháp và tôi nghĩ đó là do trình phân tích cú pháp. Tôi có điều này trong tập lệnh Groovy của tôi:XMLParser đang ăn khoảng trắng của tôi
@Grab(group='org.ccil.cowan.tagsoup', module='tagsoup', version='1.2')
def slurper = new XmlSlurper(new org.ccil.cowan.tagsoup.Parser())
slurper.keepWhitespace = true
inputStream.withStream{ doc = slurper.parse(it)
println "originalContent = " + doc.'**'.find{ [email protected] == 'editpageform' }.'**'.find { [email protected]=='originalContent'}[email protected]
}
Nơi inputStream được khởi tạo từ URL GET yêu cầu chỉnh sửa trang wiki hợp lưu. Sau đó trong khối withInputStream nơi tôi làm điều này:
println "originalContent = " + doc.'**'.find{ [email protected] == 'editpageform' }.'**'.find { [email protected]=='originalContent'}[email protected]
Tôi nhận thấy tất cả các nội dung ban đầu của trang được tước dòng mới của nó. Ban đầu tôi nghĩ rằng đó là một điều phía máy chủ nhưng khi tôi đã thực hiện cùng một req trong trình duyệt của tôi và xem nguồn tôi có thể thấy dòng mới trong tham số ẩn "originalContent". Có cách nào dễ dàng để vô hiệu hóa bình thường khoảng trắng và giữ lại nội dung của trường? Ở trên đã được chạy trên một trang wiki Confluence nội bộ nhưng rất có thể sẽ bị reproved khi chỉnh sửa bất kỳ trang wiki tùy ý nào.
Đã cập nhật ở trên Tôi đã thêm lệnh gọi "slurped.keepWhitespace = true" trong nỗ lực bảo vệ khoảng trắng nhưng vẫn không hoạt động. Tôi nghĩ phương pháp này là dành cho các yếu tố và không thuộc tính? Có cách nào để dễ dàng tinh chỉnh cờ trên Java XMLParser cơ bản không? Có một cài đặt cụ thể nào để đặt cho khoảng trắng trong các giá trị thuộc tính không?
Đó là những gì sẽ xảy ra khi bạn tiếp tục phân tích cú pháp của bạn đói ;-) (Tôi xin lỗi, tôi không thể cưỡng lại) – dasblinkenlight
Vì vậy, nếu bạn nói whitespache, bạn có nghĩa là chỉ có dòng mới? Và nếu bạn nói các phần dòng mới không bị xóa, chúng chỉ được chuyển đổi? Afaik XML chỉ có linefeed cho dòng mới. – blackdrag
Tôi tin rằng có một vấn đề về điều này [trong Groovy JIRA] (http://jira.codehaus.org/browse/GROOVY-5360) –