I have fiddled around with LaTeX3 coffins to the point that I have become frustrated with the absence of \vcoffin_gset:Nnw. To that end, I have arrived at this somewhat baroque workaround. It works by putting TypesetCoffin<\your coffin> in a global lrbox (see the code below). Frankly, I didn't think this would work, but, Lo!, and, Behold! it seems to. The object here is to create a coffin and use its contents outside an environment or group. There are probably limitations of which I am unaware.
\documentclass{article}
\usepackage{xparse,xcoffins}
\usepackage{etoolbox}
\usepackage{lipsum}
\NewCoffin\MyTestCoffin
\newsavebox{\testingbox}
%% Thanks to egreg, makes glrbox global (requires etoolbox.sty):
%% https://tex.stackexchange.com/questions/43046/beamer-content-in-box-register-does-not-survive-endframe/43063#43063
\cslet{glrbox}\lrbox
\expandafter\patchcmd\csname glrbox\endcsname{\setbox}{\global\setbox}{}{}
\cslet{endglrbox}\endlrbox
\ExplSyntaxOn
\newcommand\typesetit{\usebox{\testingbox}}% <<- Redifined.
\newenvironment{test} {%
\vcoffin_set:Nnw\l_tmpa_coffin{4in}
}{%
\vcoffin_set_end:
\begin{glrbox}{\testingbox}{\TypesetCoffin\l_tmpa_coffin}\end{glrbox}%
}
\newenvironment{testi}{%
\vcoffin_set:Nnw\l_tmpa_coffin{4in}
}{%
\vcoffin_set_end:
\coffin_typeset:Nnnnn\l_tmpa_coffin{l}{T}{0pt}{0pt}%
}
\ExplSyntaxOff
\begin{document}
\begin{test}
This is the first one.
\lipsum[1]
\end{test}
\typesetit % Not empty :)
\bigskip
\begin{testi}
Blabla bla.
\lipsum[1]
\end{testi}
\end{document}
Comments welcome.
