A couple of comments before moving on.
Naming an individual defect "myCollection" is a bit misleading--if I saw a variable called "myCollection" I'd assume it was... a collection. And I already knew it was "mine". How about naming the collection "defects" and having each defect be named "defect"?
Using scriptlets is considered a relatively poor practice, and has been for some time. Particularly since EL is available via a
JSP 2.0 container, and the Struts EL-enabled tags for containers that don't support JSP 2.0 (woe be unto you if you're using a container that old). And there's a form of the
<html:link> tag that will create a link with a single parameter.
Consider not using the scriptlet, and just embedding the defectId in the link all in one shot first. If it's still not working, post the current complete code, and we'll take a look. Either that, or run with the form idea, using either a form-per-defect, or some simple JavaScript to set a hidden value with the defect ID you care about and submitting.