[richfaces-issues] [JBoss JIRA] Commented: (RF-3529) paint2D: component is broken under IE.

Adam Michalik (JIRA) jira-events at lists.jboss.org
Tue Jun 16 07:00:57 EDT 2009


    [ https://jira.jboss.org/jira/browse/RF-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12472304#action_12472304 ] 

Adam Michalik commented on RF-3529:
-----------------------------------

I think the bug is caused by the fact that the paint2d data is passed in the URL and IE has a URL length limit to 2083 characters only (http://support.microsoft.com/kb/208427). Here's a test case:

test.xhtml:

<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:rich="http://richfaces.org/rich">
<head></head>
<body style="background-color: cyan">
		<rich:paint2D id="painter" data="#{tester.data}" style="border: solid 2px blue"
			format="png" paint="#{tester.paint}"
			width="650" height="1500"/>
</body>
</html>

Tester.java:
package test;

import java.awt.Color;
import java.awt.Graphics2D;
import java.util.Random;

import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.log.Log;

@Name("tester")
public class Tester {

	@Logger Log log;
	
	public Object getData() {
		String s = randomizeString();
		log.info("Data is:\n{0}", s);
		return s;
	}
	
	public void setData(Object o) {
		
	}
	
	public void paint(Graphics2D g, Object o) {
		log.info("Painting\n{0}", o);
		g.setColor(Color.GREEN);
		g.clearRect(0, 0, 650, 1500);
		g.setColor(Color.red);
		g.drawString((String) o, 0, 40); 
	}
	
	private String randomizeString() {
		Random r = new Random();
		byte[] buf = new byte[5000];
		r.nextBytes(buf);
		return new String(buf);
	}
}

When deployed, FF shows a big black picture with some red gibberish. IE shows an empty image (image border and a cross icon).
The image URL is:
http://localhost:8080/myproject/a4j/s/3_3_1.GAorg.richfaces.renderkit.html.Paint2DResource/DATA/eAF1WmlwnFV27dZq7fti7Za1L63d1uLWvljW7tZi7Wq12q22pe52d2uXLAFDJjAuT4ABwjoLRWAcmCFDBWbAMQrYGAwYMOMAGhwnwzCZ1FSWSlUqP5NzdB8tj6tCnXvufe!7-r13l3dbpvqlf9P4upyaQ3anRee0mmZPGk1ml85pts2Ynaetbt2se35O12u02tylzcfNLvuC02TOaJ83WszNRrdR!96N34b!709f8dL4t2v2TU5bmuxzdme7xn!ypN05b3TTmjVbLbOw!CaXrDPu2RFNgMlomjUbp-fMnRrfyRks49ZEdp4yLhqL5ow2S1HP9CmzyV3TiU84uPEZzVmNdtmhkf-8NBrfrzQarwc17oMR!!HW31VDBCPDomdEDUAd7xsHt0KKZBJ89Tkxa6FyIcvtBTKh-!SBQ2KBtWI1nnbACFsDffwsqD0JtAhR6zW9!We!e-VRjIGcpk4xjFCDkMpcoxVqFJLRDeqAACEQo1tsHi0pU2zhsyZ-pi5aRnao1bENsOHaI2CvX18o3nt9NHp!pR6ziZC2jx7Oh9rsBwFHYqpPidUuKkHU7ZehqzboeIiVjgCDRVefYTQAL1EeDp4uOYzBAuT6X4FuvgIyZE3Op0PnQACXGXQwXgYNosDbW7!-QcKyDOkyXQF0p0Hcxj8WlMKZLlBShwUMxBlADCSz4oKchPC4xyECZjYv01cG!l2BBcyRWd!Hven-zrn1CiiGHGDGhkbELoYq0YudXCkanAdJSQM1QhrSmdv4quoNHfRGy8k-KA-4GrC9dUZHsyOUOxUekdlIKO-mhvnG95-Hdet13ThUdoWBnrI4UyEu-gQkFalqqVujd4mrIDowyaje2krJ7i9uzFMpxEw1w8AQaCF8l2HK7wEB7z3BcpmGcJdqSE0ViK9kQRoimMOY-IXjAdD0k-fy4KuHsovpOE9XwUydgfAoDKugrVd0Zz00gwh0HQN5Q7hgvrMGPMMK7ND3GK!8AkbtOsgD65iYuenQ9KscUipzYF0ag8erIlhlkgUBQVYYowdiVcYx0AV6nnJLgDUoYKC4cwj9aVERXJFnYAbmBGQewmgJJni68fIFcEcAo1rIWANBkJOs4pgkmTAdj!rnC4!nZ8so0QbNjfiKKqiNNthsQidMIKC8VTSY8QKa!F1quYBgXTgmYj85J0!AvAjqFseV78NgTq0Ds3BsuMkfWuBXrvXjpBvkjAItxoGYOoEP!QHYjNR-MnGmk1kQXPlu-YH9jHC1j0zst7bSG5a9jXWRNgkKgwhSphi2-qMxO099dtF24y8xoAfAMXM2OxHwT8-!ub21wWK5E1MYZJ-otrNAecjsVX167RA!klwHipzwKdgrAB4wcT9oL3gYCDIXeK5UL1C8ZxIGJ1j0vJNlEGAyqVAMsM8Ukw9ceWP42i!n6gp5HVSIYug8F-O-TLq6WjzdQvinD3HGFJ-WtMpADED8tPo6m7oKGLIOgP6cRnZSLtwLSQsFcQe7CgzMgxCgHeLfmzwuo5hu0RMOHQwWEMAbAjRvbx3njReUcf1lJhuoZZ0ksr14sL3FKzwXeThst3YSpljodIoptqhjwgTqjogWVhcJA-aGI540AgJcfwN0FlIESdBHsCSAAg4XxQ5KZljUg5Wa3okeU3vnQP0QJln1zI2gLdljwujlEs1s9h2QLAjADlSwBGplsWdDDE12cE4PY-LfkTHWNcCIOor4UlkuCDBCWEgBqq0kMQXbWxyVqe8qxyxTpoek8VJ88f1GA2NjgaitYf3D00wCL1Uwiy-F5aD-qFBVtVqBqc46Ji1UeaySQHe58nCLA3wAojqTulx8zsbPWAHsoXdCG3ztJYy5o4BZE7z7I9HNWcxN9GfnTsi4kKeoVwVywI!-Md5N8jSDAQR4LQB1mFSYf3zrb2UOzBpRDaLNM9lyWsyBadEMSq3yluuwzhbNyc3L8njiFPtCpQzAf3zyeS-bjJhAwLs2Z413n2X33kWZYzUDTOuQKmqYJyFc!mwyCMi9fKGH2zB6dGxdrejL0!YusE10ZZdZOktghJXTu1kIwBbUq1p5mEyBv!nh0yPRkb4yzopTi2Gozd0Af!SMPGHsR8rolXt7S6bCxxj1-YMg3gbAT4mMuK2NBacWr2AMNyH0xoNIj8Vw8fQFHWPGKQvdA-xhFSyRUedEVclmy!bWOgb0SdCwBD2tCscWj4G!PGCJmuNAISHt4AbT-69CBUOApMuvgFtkEDNEBywy8D4KrZIvMxZLqCGIBdXG4wE-PBi3Ld3e4jUENlnkh8UGT6Z684T0PHXCMwujQwYdrIRMsVVqVLY3HK0MqYD3xYOmhtLFQgaim6H-4F4mV6CKHYOcL!-c23nvA018!sLOY!y-D-ftBBoPgWYzbj!CW9wzxTLgic9cfdTU0b7uvH4fBuw-21upcVDcPAUCBFeBOvqrGLyevu4hqH7GrsnBmUKIfV!ltb!ISOVXWqmKKszfXFrRqYBjBMT2gviSan9cP!Cd58AnubMXXx6HCNaTmDhBMhTPHcpeeJJOCg7xbiT57zWO3HUmELDNiY5mrFWQ1bXXYqYZYmExe6BlCljktZB4o9qjN1od4rMXGjDfbTWDk!zzwEBOD4itzSnjZRXrKw9hbGMmd78TMnNgrbM4ue0KBDBpORCsqc!TRb4LxHYzQwDrnYGqZeA8WIY1JqPchOOObNplHzzmeQ6Dy7M5hkN0wTGq3jAYZ70DdAXgOyd41mRr3Hjx2NlNvsm47uXOklNQjAlfCL9jm7ikVl3iGtg5q3tdA8NoSJ43CGgPzRoLLOFyQCQkKI6tMwBCB69dBJkg7Hlcm7V3F9o!eH3kzqmVuJS-jAjPzPU3YZo668C!P!86uJMpK2dy210TwS1mxkqQMFgKIzi0aLeDcaujqawGoP7jZ5czVBPAMED!-bOd8iS1eYShZ8pZR4GQjFMghil0AQSMtPOVebYBF-TDR5gxwQaUg681QZy8VjzDOGSeSx09NJqWx7LzoNZQD5vZU1HzgemGxEAEfVAbltpD3As4wGAkNqjTh9TVMwBJGaAgyM7LoJCWqZn6bt4FZ2l3jx76iOpdMLlcEgRI4B8SblWihbENMUyWuq68UT57d6Ybw6X3ntveGkiABTAEn!wUFK7djZjMTp6G3ihNq4Kah7C-uVn!jRfAwO17q8HRBSDW!!ZWMrN9FiLgiQBVtOsw-SqwBDm8KjZj5P!5o-Cyxf1gPrv6Gv2YhAgYQ0GOk9!iQVkB4OLD3I4RU5WgLiAmWmsvX2Bh9!CaA6x!5iQWErjKfuHDigj4x9fALAk9ZHtL6w!lgfp7gRfMZC2e20vivhZMjXneM8IanZlev!4IjEYDqG31!QvyuISLr!AoG8102MVTjEOA1RL9fELvR98vHJUxeF!v3i4yuZgLzSt2-SKIn1yDeFAGix85omLNC8ma0kawYoCxoElWLWDJ4bEFpcyjB0crknOO1RxNu!WUbTClcyGEH2ACeE822E5zE8trylMWYAm8ylRhsdaBMM8TC6x8N280T8GzRy1aGOoIdSUiu3h3wjhlzNnLsJeKAVtyy7AXfYzK9u5eSYYBLEJ8W1PBdSZfXo2Ur54Bs-0AvtEgdjazjI!5q9TJUBWdDFgqLDlXdXJUAJ1slPmcxYJ9sHaYwzaIU9vhnw49UhOwwKoRNPV6TJaFXxWIkY8PYrgHwuM-fRgaYOfyFtPDytuKQ835RzBZ2ar3qoXWMlp3QoWCVw5Y6gQdg9BtwJFcLIYwA24p9CmqaICRq945I8-CofpmeD4goZuZnIOo-2hKkAeRDK7AxL0m1kFRVd1JnJ9uuPYYQxYK8YcsRYFyIEDLHGMO6EW5Gbdowyz3EOi1NTDqXapaHDK7l!VImaDy5uq8O1yzECJ4-1eMs53bD!qVp8fzgCygQ!kgYPefPTtPHh6TIfjLt9oDnfaSGZi8mLwQgkr6Pc!CZ!-M5OgPD94PdleCBAOHoXObWT5GegP4p4j2FjWU0VrNuoh29srEjZ9bhzqvXOrCiG7yMvK6LnSAGDkBXcyDsE8KgkXx4GkuUDjTwWbGKHWPm!q4gKBe5dNN77lC!mLPGpQVwk9Uhrz9MyhBW4Fo3zTRx44dF2P5LHQAxBfCzVT0edr99b2NO8!DWBtOyY3z9WbtfflK0RzU0RZQGL!YgLQRVTTDMczLCmOQyFS8c98pMEBXwiYbwUy9Ku3DPCXAHGftJdexvWUdMhiCXJYyutOqIr5!BIMiyGHdwVGVZxaAwJGbCoPdpNYGKsoGnWazAXhsfn94M8t3go2ikW8CLQPDdz7iR4cZK!rCLALF!NqgTKWl9MnUXo2wDXabQTHaYIZWLcto7pyv6Wc4ARX9MhmNG1Z5BODK!aPg7S29DOkmcMLhaB-H5mFaGAugjZ4APvG8b2EhoDGmDkhn4wLM7zxuUyFWpbZzDyOlbgM9UB0aViZE1TIDLAgrcSbDYuUCTFv-MsgPosrGDZO3QtB6-9LVS2wMp!bVV8dBlxcx4wDL9SgktiXoDNQAZO3t18E8s786UQlswXKQ3WPf3IKZOCvjr59549t!pUZhprfIzVOpmLzz1!KSbXuL5-rdO5gnor-!-DSzOMg47Gse-Phv5BM3fwLNzsPVAMYrQ8xJ2qkD7OWCiiHoCpZZNWTTMh7MmABeZX6HjGJuhkHvFVITRjWZwQXMEiMRyO2ZXMaKRbCYf!l8Hb94QpNBFY3jYBYR1Ybodx4WDR6ETHz5fOzuZWf6Mx1pzIlgE8rGABdEe-a8xFpK9i7oUJFsY!zGTIWqc3ledQeqj42HhHwbaqZyHjJBRwTKUQzWWGOd15!Mhbr5ljy17aY0UvUFzC0W0J3icXkMrmIsBLzYpRAGwx8ydZojgLVxJ9TudPX6ozyleg8WAyowDbLXKIdPOfUyyzFjAkywSf3ml4w2EBZRCB5dY!sFDKJq6999A5Zt5wnekMSaxFnTZu387YfkaXtHwfq0mMKtrIRhxgHocW5vcU0memK0HJwIGYcEM-RMuwdZ6twGeuKGWCBdkNHNCrBgNef2D-YXz5YsYbgScUAmuSYjrvoLrOPFhfmZSVZV9DwREPrJd8UAZxWoRpsXYo!0zI44xTzAwwH9i72xo2J28lENZATCsmLBuSA3nwMtHAQBs36cFjA1!BDDnXeGK1rpRz!EG6Lllwy7r4o2LGCRvghuPi2amwENosDFkGB9Avj6j0EdH57zqWWbi6ra4AUYraG!Jw58!pORpciEEm7RB-nuAQGT3K-Js4NWmVkXJczyVqGBxcICOOliR1zau8fM1uoCCCiF1LSBuCywo5oPzMqFdAaAmWr-5FwrnVFZb2D0gPGrbGrAUUi1qut3X8zCKGNs!zzUOt8cy5oLTocGUq88us4veKCOeY!oYHA--04o4wowReGQIa4IWKZA!!7gz8FBkIAy0Ke!As3wOF41LBPj-qkTDVzMJxMEjKljssEADan8im-d6pkf5AOjwV!mVcWc5p7AGUga70OVjC1Qy3sXEiOVzt!-6J7ZW!fpC6Z5Q4HgA-9dolnBaO07BjJsb115sY2JjYcAM6JiodTZfMtVCuWJh7nrbsSh6dwAAwDEiAIne!OAXVqLWsnzoNM!8-oD-g12hGHP5O37YTKY8bt!zMj87v!CF1PHEvIOlkHy4oevNX92SQaMB5APCRHz2jNNTueiDoPTxw!yjiRDCv218vQublcFuKkKjQWQBqnpiTemQjNYAAseiD54YrXfEMBmAwRWRjOMggSPBYPN5fJTA-CQP6n9lZyb3wvDbMHKjZ9BcTNAVVrPSKbfN2-ei5TJsdPQWUNth6-dX0i3y9zXrz8A4917QepvILqsvhATy-Wl7oJ8Py8eoEDGO0-IZukBS4s8gAdReTC9HP3fvPga!-gCCkUFQjlYF!kRvHOneRwWrpkdgNtufHmxZW5INa--AMwAJybSJ6HMXaDd7zM1!8V5ec6LAazcog!l9aB2yNcX7gEnTblVb6InqqS9SlZ7MALW2c6AL-5RYctanZAZYYOoE6IaWJV5G6DjEJtMFqmbJ6MgUcKjgyp8PkP4xQjm!vD4q-BbL3lemq0Qc5CLBlTWsRsdgtAJYG1jGsxqZKSATAdokRdihp!kbdn9f1LQAF8Or9jtO7AYUwHTwWcA81e9JHZSf0TyeGLgDIs4WCdz4KmGDnA0g7xXf3lcA8hIOcsjnFRBjTgT2ceVtSoH8hKbYK7qYrlGvjoTDTpzqhU8D3HhpzxZ!CXNsk5-yGOyzzvsNrPNrTPgZzbmo!Y5!K7HYFw0O4evvap!5OmPurw0Xp34Sc6c0eXqNs6b!!SnOAa302qz4Kc4gS58ZmZ3DbcmVn6sY7UXGcxOq3HOusof89QsOxzYPhtb6lwLtt0DzJndLp15TtdpthhNK11m96x9ptFqm8Gi6uc8Wi-NtlOjnXdrEndXXS4yzxXJiy3LDqfZ5bLabVj6!1u532i5--1vVw7WaJadmv0SDhzi7vd-UXTte7!7n!Lz-EUR3ovyvLe373P3P2j4r5EbR!gGT3CAv5I6NW137Tp193rt84656f-M---gv4!o4t783VLwUpQm7OCa2-xym5263Z8zbWg0C9hudNddHX!xhNzshvnlG4P!8q!Ja22728ELL7ecSmdccuvanEbHrNXkKm12a8J5Vvmo!FjK4VheytfkFnEf3TJ!s5VWX1VQVpK2u6M-!a4TpC!!HzgbpCY

When accessed, FF shows the image, IE shows a 500 error with the above mentioned NPE stack trace.

I have noticed that the documentation for paint2d data attribute says: "IMPORTANT: Since serialized data stored in URI, avoid using big objects". It is good that it's documented but maybe a different solution can be implemented?

> paint2D: component is broken under IE.
> --------------------------------------
>
>                 Key: RF-3529
>                 URL: https://jira.jboss.org/jira/browse/RF-3529
>             Project: RichFaces
>          Issue Type: Bug
>          Components: component-output
>    Affects Versions: 3.2.1
>         Environment: IE(3.2.1.CR6)
>            Reporter: Mikhail Vitenkov
>            Assignee: Tsikhon Kuprevich
>             Fix For: 3.3.2.CR1
>
>         Attachments: Paint2DBrokenIE.png
>
>
> See attached screenshot.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       




More information about the richfaces-issues mailing list